John Shields, Developer in Austin, TX, United States
John is available for hire
Hire John

John Shields

Verified Expert  in Engineering

Software Developer

Location
Austin, TX, United States
Toptal Member Since
October 3, 2016

John has a passion for elegant software and the art of taking it from ideation to production quickly. In his 16+ year career as a developer and architect, John has had the opportunity to help the smallest startups through large multi-national corporations to create quality software fast.

Portfolio

TubeMogul, Inc.
Amazon Web Services (AWS), Kubernetes, Docker, Apache Kafka, Hadoop, Dropwizard...
Passbox, LLC
Amazon Web Services (AWS), iOS, Android, Spring, Java
The Codeworks, Inc.
Vignette, JavaScript, REST, SOAP, Jakarta EE

Experience

Availability

Part-time

Preferred Environment

Java, IntelliJ IDEA, Eclipse IDE, MacOS

The most amazing...

...application I've built is a system integration product to sync staffing agency candidate information among disparate systems, eliminating duplicate entries.

Work Experience

Technical Architect

2012 - PRESENT
TubeMogul, Inc.
  • Worked with teams at TubeMogul to provide architectural input and guidance as well as hands-on coding to implement specific features, capabilities, and libraries.
  • Designed, documented, and coded a set of low-level libraries for use by all TubeMogul Java projects to consistently implement application configuration with first-class environment support and dynamic capabilities, service discovery, standardized application packaging, a standardized maven parent POM with dependencies, and other features to allow the applications to consistently interact with their environment.
  • Designed, documented, and implemented a Docker based local development environment capability to allow developers to perform more full-cycle development and testing.
  • Designed, documented, and implemented TubeMogul's continuous delivery capabilities in Jenkins. This included standardizing the company's Git branching model, build process, and deployment process as well as implementing their automated integration. Worked with Operations to create infrastructure and networking rules for this capability. Continued evolving the deployment scripts and infrastructure for cleaner deployments.
  • Evangelized continuous delivery with teams and assisted them with adoption.
  • Worked on the Statistics team to improve and operate a large scale Hadoop-based data processing pipeline. This pipeline processed billions of transactions per day to record, process, enhance, aggregate, and report on events within TubeMogul's online advertising platform.
  • Helped design, code, and integrate a new finance module into the ecosystem to allow for more accurate and fine-grained billing of accounts as well as first-class support for multiple currencies.
  • Created a cloud-based database backup system to reliably back up a cluster of 100 MySQL nodes and automatically validate each backup. The system included an AngularJS web console for inspecting the status of backups and reporting any errors.
Technologies: Amazon Web Services (AWS), Kubernetes, Docker, Apache Kafka, Hadoop, Dropwizard, Jetty, Java

Senior Systems Architect

2011 - 2012
Passbox, LLC
  • Worked with a small, dedicated team to develop the Passbox in-store loyalty network product from the ground up. The product provided convenience stores with in-store daily deals, loyalty rewards, and targeted marketing all with high consumer engagement. This product spanned many technologies including an Android application deployed on in-store tablets, an iPhone application, a cloud-based server infrastructure, and a custom Verifone POS application. The system integrated with multiple external systems including the Excentus gas loyalty network, the Twilio SMS network, and the Giftango gift certificate network.
  • Designed, developed, and deployed the cloud infrastructure to create a scalable, easily updated, and reliable server environment.
Technologies: Amazon Web Services (AWS), iOS, Android, Spring, Java

Systems Architect

2007 - 2011
The Codeworks, Inc.
  • Worked as the system architect to design, develop, deploy, and support TCWI’s VMS Express product. This product utilizes many current technologies including cloud-based deployment, RESTful web services, a custom web browser client, server-side JavaScript business rules, SOAP web services, Kapow web scraping technologies, and configurable integration routes via Apache Camel.
  • Worked as the primary sales engineer to demo VMS Express for potential clients.
  • Managed the development team and process for product planning and strategy.
  • Managed a client team at a Forbes Global 2000 company through requirements gathering, design, and implementation of the company’s internal Intranet application. This application utilized the Vignette Content Management System and Portal products to provide personalized content delivery to the company’s employees.
Technologies: Vignette, JavaScript, REST, SOAP, Jakarta EE

Director of Engineering

2005 - 2007
MechanicNet Group, Inc.
  • Managed a team of software engineers and technical support staff through both new development and maintenance of a custom CRM platform that mines vehicle maintenance records to send postcard and email service reminders as well as other communications.
  • Designed, developed, and deployed a custom data load infrastructure to nightly load 40-80,000 vehicle maintenance records (with peaks ~350,000) from over 80 proprietary XML data representations into a single normalized database.
  • Implemented engineering processes, procedures, and disciplines including version control, defect tracking, release scheduling and management, code inspections, isolated and virtualized developer environments, production-mirroring QA environments, a centralized documentation repository, and a reliable software package release system.
  • Designed and developed numerous web applications including a self-service postcard promotion system.
Technologies: LXC, Perl

Software Engineer

2003 - 2005
Robert Half International, Inc.
  • Customized and implemented Wily Technology’s Introscope J2EE performance monitoring system.
  • Designed and developed a custom Java performance monitoring infrastructure.
  • Worked on a team to design and develop an enterprise J2EE application that includes a desktop (Swing) client, web services architecture, and a standard J2EE application server tier.
  • Architected and developed a client-side Swing data binding and validation framework and a server-side persistence framework based on the Spring Framework and Hibernate.
  • Created and customized the Ant build system for the Java infrastructure.
Technologies: Swing, Hibernate, Spring, Jakarta EE

Consultant

1999 - 2003
Accenture
  • Designed, coded, and documented various Java web application components for applications such as an online testing system, a billing system interface, and an enterprise application integration system.
  • Managed development teams through requirements gathering, design, implementation, and testing.
  • Worked closely with client personnel throughout project phases, including activities such as requirements gathering, design sessions, system implementation, and client relationship building.
  • Wrote technical documentation covering topics such as UNIX technical architecture, web-based application architecture and design, support processes and enterprise process impact, development tools configuration and support, and other technical topics.
  • Coded various computer application components including development support tools, billing system components, and web-based components.
Technologies: Jakarta EE

VMS Express

http://www.bullhorn.com/products/vms-integration/
In my time at The CodeWorks, I built the initial version of an application we called “VMS Express.” This product allowed staffing agencies to integrate with the Vendor Management System of large employers to provide two-way integration between the many VMS installations and the staffing firm’s applicant tracking system. This means that as jobs appeared in a VMS they would be automatically populated in the ATS and as candidates were proposed for the job in the ATS, they would be pushed back to the VMS. This saved the staffing firms an amazing amount of time by completely eliminating a large amount of routine data entry and allowed for greater productivity as staffing employees could work exclusively in the ATS.

What made this application interesting is that none of the VMS products provided APIs. This means that all of the integration was accomplished with web scraping. I built all of the integration pipelines to handle the input and output with all of the various VMS products and with the ATS. The system was designed to be very modular with adapters for both the VMS and ATS and a scriptable data mapping layer.

Finance/Fees Module

At TubeMogul, I worked with a small team to create and integrate a new fees module into the TubeMogul infrastructure. This Java-based module handles the fine-grained application of fees to the millions of billable events that occur in the platform every day. It carefully prevents any floating point math errors as applicable fees are applied. In addition, the module handles REST API lookups with caching for its high performance requirements.

Passbox Loyalty Network

Passbox, LLC was a startup aimed at creating an in-store loyalty network at convenience stores in the US. I worked on a team with two other engineers to create the platform from the ground up. The system included custom POS software, an Android tablet application, a cross platform phone application, and the cloud-based server.

The Java-based server application handled events from the stores to calculate and award points, award prizes and instant rewards, publish information and images to the in-store Android tablets, and handle communication with users (email/text). There was also a web based administrative UI to allow configuration by Passbox and client administrators.

The server utilized SVG image processing to display dynamic images on the in-store tablets allowing for an immersive and customized experience to the end-users.

Languages

Java, SQL, JavaScript, TypeScript, Perl

Frameworks

Angular, Apache Camel, Spring, Hibernate, AWS HA, Swing, Dropwizard, Hadoop

Tools

Jenkins, AWS SDK, Apache Maven, Amazon Elastic Container Service (Amazon ECS), Git, Docker Compose, Eclipse IDE, IntelliJ IDEA, Jetty, Gradle

Paradigms

REST, DevOps, Agile Software Development

Platforms

Amazon EC2, Kubernetes, Spinnaker, Apache Kafka, Docker, MacOS, Jakarta EE, Android, iOS, Amazon Web Services (AWS)

Other

Software Development, LXC, SOAP, Vignette

Storage

Spring Data, AWS SWF, MySQL

1992 - 1996

Bachelor of Science Degree in Electrical Engineering with a Biomedical Engineering Specialization

Southern Methodist University - Dallas, TX

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