Andrew Rockwell, Developer in Battle Creek, MI, United States
Andrew is available for hire
Hire Andrew

Andrew Rockwell

Verified Expert  in Engineering

Software Developer

Location
Battle Creek, MI, United States
Toptal Member Since
January 15, 2018

Andrew is a versatile, professional developer focused on solving important problems with the right people. He has primary experience in systems (OS, networking, security), desktop, and web applications. Throughout his career, he assumed different challenging roles, from development to research and consultancy.

Portfolio

TASLAR Group
C++, COM, C#, Entity Framework Core, T-SQL (Transact-SQL), Visual Studio, Git
Microsoft
WinDbg, WDM, HTTP, C++, C, KD
Michigan State University
Capistrano, Cucumber, RSpec, Amazon Pay, HTML, MySQL, JavaScript...

Experience

Availability

Part-time

Preferred Environment

Git, C, C++, Networking, Security, Operating Systems, Rust

The most amazing...

...code I've written is the HTTP/2 compression library for Windows.

Work Experience

Consulting Software Engineer

2018 - PRESENT
TASLAR Group
  • Acted as the development lead on a one million+ LOC core payroll engine serving multiple million-dollar providers.
  • Integrated development across multiple applications and runtimes.
  • Modernized development environment—VC6, Visual SourceSafe, XP to VC14, Git, Win10, unit tests.
Technologies: C++, COM, C#, Entity Framework Core, T-SQL (Transact-SQL), Visual Studio, Git

Software Development Engineer II

2012 - 2017
Microsoft
  • Developed an HPACK HTTP/2 compression library consumed by native Windows HTTP stacks.
  • Built the client-side of a high-performance (1.3 million RPS) TCP splitter on top of WinSock Kernel.
  • Created an HTTP/2 framing library consumed by WCAT and Windows HTTP test frameworks.
  • Designed Windows Server containers in AFD.sys as part of my role.
  • Developed wildcard hostname binding and asynchronous SSPI features in HTTP.sys.
  • Served as a core developer on Windows Server containers and HTTP/2 features in HTTP.sys.
  • Performed analysis and optimization of HTTP/2 in HTTP.sys, yielding 15% RPS improvement.
  • Resolved feature work and bug fixes in Windows client HTTP stacks (WinINet, WinHTTP, WebIO.jl).
Technologies: WinDbg, WDM, HTTP, C++, C, KD

Research Assistant

2012 - 2012
Michigan State University
  • Served as initial author of crowdfunding web application.
  • Contributed to full-stack development on Rails MySQL, JavaScript, and CSS/Sass.
  • Built a Kickstarter-like funding model with Amazon Flexible Payments.
  • Performed unit and functional testing with RSpec and Cucumber.
Technologies: Capistrano, Cucumber, RSpec, Amazon Pay, HTML, MySQL, JavaScript, Ruby on Rails (RoR)

Web Application Engineer

2010 - 2012
TechSmith
  • Built product support/customer management application in .NET MVC, consulting with staff on UI and functionality.
  • Extensively refactored antiquated Classic ASP (VBScript) web pages.
  • Served as test lead on greenfield Single Sign-On project.
  • Ran automated functional and unit tests for Jing, SnagIt, and web applications.
  • Performed web application security testing.
Technologies: VBScript, Classic ASP, MSTest, HTML, JavaScript, Microsoft SQL Server, ASP.NET MVC, C#

HTTP/2 Compression Library (HPACK)

Consumed by all native Windows HTTP stacks - HTTP.sys, WinINet, WinHTTP. C library that cross-compiles in user-mode and kernel-mode. Implementation of RFC 7541.

HTTP/2 Framing Library

C library consumed by WCAT, a public-facing performance analysis tool, and Windows HTTP test code. Implements RFC 7540. Allows application to handle HTTP/2 as desired, without having to worry about the details of the wire format.

WinSock Kernel Client

Client-side of WinSock Kernel-based TCP splitter. Forwarding benchmarked at 1.3 million RPS. Greenfield development of next-gen routing application.

Windows Server Containers in AFD.sys

Updated AFD.sys to support shared kernel architecture necessary for Windows Server Containers.

Asynchronous SSPI

Converted HTTP.sys SSL handshake from blocking and synchronous to an asynchronous state machine. Improved handshake performance by an order of magnitude.

Crowdfunding Application

Greenfield, a full-stack development project. Built a Kickstarter-like application with Ruby on Rails, MySQL, and Amazon Payments. Unit and functional testing with RSpec and Cucumber. Built as a team of two developers and a designer.

Tablet-Based Virtual Point of Sale System

Senior Capstone Project for Meijer

ASP.Net MVC web application project with jQuery and a MSSQL backend. UI optimized for Windows 7 tablet interfaces. Application communicates with Meijer's existing VPOS system which provided product information upon entry via USB barcode scanner.

Support/Customer Management Application

ASP.Net MVC application replacing existing support/customer management solution. Consulted with support staff to create a solution optimized for their most common workflows.

Bayeux Server

Project for graduate-level computer networking course. .Net web server project compliant with the Comet Bayeux specification of the Comet real-time web programming model, a precursor to WebSockets. Accompanied by client test project.

Buffer Overflow

Term project for graduate level computer security course. Investigate and reproduce buffer overflow vulnerabilities in Windows and Linux. Present on the topic to the class, explaining operating system details, how to write shellcode, and demonstrations of attacks.

Languages

C++, C#, C, HTML, SQL, JavaScript, VBScript, T-SQL (Transact-SQL), Rust, Ruby, CSS, Python, Java

Frameworks

.NET, ASP.NET MVC, Ruby on Rails (RoR), Classic ASP, Entity Framework Core

Tools

WinDbg, MSTest, Git, Microsoft Visual Studio, Windows Performance Toolkit, Visual Studio, KDevelop, RSpec, Cucumber, Capistrano, Amazon Pay

Paradigms

Testing, Agile

Platforms

Win32, Windows, Android

Storage

Microsoft SQL Server, MySQL

Other

Windows Kernel Drivers, Performance, HTTP, WDM, Networks, Security, COM, Networking, Operating Systems, KD

Libraries/APIs

jQuery

2008 - 2012

Bachelor of Science Degree in Computer Science and Engineering

Michigan State University - East Lansing, MI

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring