Scroll To View More
John Shields, Java Developer in Austin, TX, United States
John Shields

Java Developer in Austin, TX, United States

Member since August 4, 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.
John is now available for hire

Portfolio

Experience

  • Java, 16 years
  • Spring, 11 years
  • JavaScript, 8 years
  • Apache Camel, 6 years
  • REST, 6 years
  • AWS HA, 5 years
  • DevOps, 4 years
  • Docker, 2 years
Austin, TX, United States

Availability

Part-time

Preferred Environment

Mac OS X, Eclipse IDE, IntelliJ IDEA, Java JDK

The most amazing...

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

Employment

  • 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: Java, Jetty, Dropwizard, Hadoop, Kafka, Docker, AWS, Kubernetes
  • 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: Java, Spring Framework, Android, iOS, AWS
  • 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: J2EE, SOAP, REST, Vignette CMS, JavaScript
  • 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: Perl, Linux Containers (LXC)
  • 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: J2EE, Java Swing UI, Spring Framework, Hibernate
  • 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: J2EE

Experience

  • VMS Express (Development)
    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 (Development)

    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 (Development)
    http://www.cspdailynews.com/industry-news-analysis/technology/articles/loyalty-game

    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.

Skills

  • Languages

    Java, SQL, JavaScript, TypeScript, Perl
  • Frameworks

    Apache Camel, Spring, Hibernate, AWS HA
  • Tools

    Jenkins, AWS SDK, Maven, AWS ECS, Git, Docker Compose, Gradle
  • Paradigms

    REST, DevOps, Agile Software Development
  • Platforms

    AWS EC2, Kubernetes, Spinnaker, Apache Kafka, Docker
  • Storage

    Spring Data, AWS SWF, MySQL

Education

  • Bachelor of Science degree in Electrical Engineering with a Biomedical Engineering Specialization
    1992 - 1996
    Southern Methodist University - Dallas, TX
I really like this profile
Share it with others