diff --git a/data.yaml b/data.yaml
new file mode 100644
index 0000000..4f820ed
--- /dev/null
+++ b/data.yaml
@@ -0,0 +1,1284 @@
+Skills:
+ Languages:
+ - Java
+ - C# (Boo, VB6, VB.NET)
+ - C
+ - JavaScript
+ - TypeScript
+ - Nim
+ - HTML5
+ - CSS3
+ - Erlang
+ - PHP
+ - XML (XSD, XPath)
+ - SOAP
+ - LaTeX
+ - Perl
+ - Ruby
+ - Bash Script
+ - Lisp
+
+
+Jobs:
+
+ Freescale Semiconductor:
+
+ Positions:
+ June 2004 \- Oct 2004: Summer Intern / Contractor
+
+ Description: >
+ Notable accomplishments included:
+ - developing hardware diagnostics scripts
+ - schematic capture using Mentor Design Architect
+ - assisting lab technicians in circuit assembly
+
+ Tools \& Technologies:
+ - Perl
+ - Mentor Design Architect
+
+ Colleagues \& References:
+ - Michael Geroge
+
+ Gemalto:
+
+ Positions:
+ June 2005 \- August 2005: Summer Intern
+ September 2005 \- August 2010: Developer (Solutions and Special Projects)'
+
+ Description:
+ Responsible for finding solutions to new problems, developing custom
+ solutions for customer problems, and providing tools and support to other
+ development teams.
+
+ Projects:
+
+ Custom Card Procurement Service:
+
+ Short Description:
+ Designed a generic SOAP-based web service framework for secure
+ machine-to-machine procurement of smartcard-based credit cards.
+ Created custom services using this framework for multiple customers.
+
+ Description:
+ We desired to offer a machine-to-machine service that our customers
+ could integrate into their customer-service terminals. In their
+ applications the customer service agents could capture cardholder
+ details and submit an order for replacement cards. Using the web
+ services I created these orders would be directly routed to one of
+ our many manufacturing centers around the globe and a new card
+ created and shipped directly from the manufacturing center to the
+ cardholder. This allowed our customers to provide 24-hour turn-around
+ to their card holders with shipping anywhere in the world.
+
+ Using this service, a cardholder traveling for business who left or
+ lost their card on one leg of their trip could have a new card
+ printed and waiting for them at their destination.
+
+ Among the requirements was compliance with the WS-Interoperability
+ and WS-Security extensions to the SOAP standard. I worked alongside
+ customer engineers to document and define the service API, as well as
+ help them integrate our service into their applications.
+
+ During development of this framework and the related services I had
+ the opportunity to contribute a small amount of code to the Apache
+ Axis2 project addressing defects I encountered.
+
+ Tools \& Technologies:
+ - Java
+ - JCA
+ - SQL
+ - Apache Ant
+ - Apache Axis2
+ - Glassfish
+ - HSQLDB
+ - PKI
+ - SOAP
+ - WS-Security
+ - WS-Interoperability
+ - Mercurial
+
+ Responsibilities:
+ - Architecture
+ - Database Administration
+ - Backend Implementation
+ - Documentation
+ - Customer Engineering Support
+
+ Tags:
+ - Open-source contribution
+
+ Generic Report Generation Tool:
+
+ Short Description: Custom, in-house application used to define and
+ generate a wide range of reports required during the manufacturing
+ process, built around the JasperReports reporting engine (then only a
+ few years old).
+
+ Description:
+ In the process of supporting existing manufacturing centers, and
+ standing-up a new service bureau we found the need to have a single
+ solution for defining and generating reports. Ideally this solution
+ would be simple for our manufacturing centers to use, easy to
+ automate and embed into production processes, support reports in
+ multiple formats (PDF, XML, XLSX, etc.), and provide a relatively
+ simple interface for defining new reports. After researching
+ available options, we decided to build our own application around the
+ (then-young) JasperReports reporting engine.
+
+ I worked with my direct manager to architect the application, and was
+ the sole contributor to it's implementation. In addition to the
+ implementation of the GRGT application, I was responsible for
+ creating or converting the reports required to support existing
+ manufacturing processes. Finally I was responsible for internal
+ evangelism for the tool, training on-site personell in the daily use
+ of the tool and in the creation of reports, and production support.
+
+ Tools \& Technologies:
+ - Java
+ - Java Swing
+ - JDBC
+ - JasperReports
+ - Apache Ant
+ - SQL
+ - Database Administration
+ - Mercurial
+
+ U.S. E-Passport solution for the Government Printing Office (GPO):
+
+ Short Description:
+ Gemalto has been a primary supplier to the GPO since the inception of
+ the U.S. E-Passport. I was part of the initial team creating the
+ E-Passport technology as well as extending and customizing our usual
+ manufacturing process for the GPO's unique needs.
+
+ Description:
+ The manufacture of the E-Passport was a multi-stage process. Initial
+ manufacture and application programming was performed at Gemalto's
+ manufacturing facilities but final programming, personalization, and
+ manufacture were performed on-site at GPO facilities. To facilitate
+ this, Gemalto provided software and support for the GPO to complete
+ the final steps of manufacture and personalization.
+
+ I was responsible for designing the database schema required to store
+ the intermediate data about the manufacture process for each card,
+ providing production support for the database in manufacturing, and
+ creating high-performance tools and processes for extracting the data
+ from the manufacturing database into secured data files in the format
+ specified by the GPO for the purposes of auditing and import into
+ their manufacturing databases.
+
+ Tools \& Technologies:
+ - Java
+ - Java Swing
+ - JCA
+ - JDBC
+ - Oracle Database
+ - SQL
+ - Apache Ant
+ - Mercurial
+
+ Responsiblities:
+ - Database Administration
+ - Backend Implementation
+ - Performance Optimization
+
+ Cryptographic Service Implementation:
+
+ Short Description:
+ Built a service exposing cryptographic operations of a new hardware
+ security module securely via our proprietary protocol for
+ interoperation with our existing manufacturing engine.
+
+ Description:
+ We were exploring the use of the Luna PCM 2.2 hardware security
+ module by SafeNet for use in our development environments and
+ potential use in our manufacturing environments. In order to expose
+ the HSM's cryptographic services to our personalization engine
+ (Samarcande), we needed to create an interface to the HSM.
+
+ Tools \& Technologies:
+ - Java
+ - JCA
+ - JNDI
+ - BouncyCastle
+ - HSM SDK
+ - PKCS#11
+ - Mercurial
+
+ In-house Operations \& Tool Development:
+ Short Description:
+ As a member of the Solutions & Special Projects team I was personally
+ responsible for the operational infrastructure used in development by
+ our Banking and Telecommunications Personalization teams for North
+ America, and created several in-house development tools used by the
+ same.
+
+ Description:
+ In addition to the individual, special projects listed, the Solutions
+ and Special Projects team focused on supporting the Banking and
+ Telecommmunications Personalization teams for North America. In this
+ capacity, we created and maintained the in-house development
+ environments used by these teams. This included servers dedicated to
+ running Oracle databases, cryptographic servers containing hardware
+ security modules, and other more general-purpose servers required to
+ support the local development efforts and coordinate delivery of
+ software to manufacturing centers.
+
+ In addition to the operational responsibilities, I created a number
+ of custom, in-house tools for use by the developers in our
+ Personalization teams, including utilities for managing plugins to
+ our proprietary manufacturing engine, utilities for manipulating test
+ data with cryptographic primatives, debug tools exposing standard
+ cryptographic primatives used in our in-house standard library, and
+ other general utilities specific to the handling the common data
+ formats and workflows of our developers.
+
+ Tools \& Technologies:
+ - Visual Basic 6
+ - C/C++
+ - Java
+ - Java Swing
+ - JCA
+ - JDBC
+ - Oracle Database
+ - Apache Tomcat
+ - Apache httpd
+ - Red Hat Enterprise Linux
+ - Windows Server 2003
+ - Windows Servier 2008
+ - ISO 7816 (Smart Cards)
+ - ISO 14443 (Contactless IC Cards)
+ - EMV payment standard
+ - Mercurial
+ - Subversion
+
+ Responsibilities:
+ - Native Application Development
+ - Operations
+
+ Colleagues \& References:
+ - Mridul Sharma
+ - Shirley (Kusumawati) Lay
+ - Tze Yang Ng
+ - Richard Dollet
+ - William Tran
+ - Francois Radet
+ - Raghav Sundaravaradan
+
+ Tools \& Technologies:
+ - Windows
+ - Ubuntu Linux
+
+ QuantumDigital Inc.:
+
+ Positions:
+ August 2010 \- February 2012: Systems Developer
+
+ Description:
+ Responsible for supporting the legacy order and fullfilment systems and
+ migrating these systems to modern technology. Launched the company's
+ first mobile app.
+
+ Projects:
+
+ FoxPro to Java Bridge:
+
+ Short Description: Dynamic, runtime interface layer to expose FoxPro
+ tables to Java programs via JNI.
+
+ Tools \& Technologies:
+ - FoxPro
+ - Java
+ - JNI
+
+ Quantum Post Cards:
+
+ Short Description:
+ The starting point for QuantumDigital's migration from their legacy
+ FoxPro-based web application to a new web application written in PHP,
+ based on Magento.
+
+ Description:
+ QuantumDigital's primary backend was a monolithic FoxPro application
+ written almost two decades prior, leveraging a framework called West
+ Wind Web Connection. Over time the company had worked toward
+ modernizing some of the periphery business logic as well as setting
+ up database replication from their primary FoxPro tables into a MS
+ SQL instance.
+
+ Quantum Post Cards was the first large-scale migration of core
+ functionality away from Visual FoxPro towards PHP. As a systems
+ developer I participated in the architectural and design decisions
+ leading up to the new effort as well as the core implementation of
+ the new system.
+
+ Tools \& Technologies:
+ - PHP
+ - Magento
+ - MS SQL Server
+ - XHTML
+ - CSS2
+ - JavaScript
+ - JQuery
+
+ QCards Mobile App:
+
+ Short Description:
+ Developed the company's first mobile application enabling realtors to
+ create custom ad campaigns and postcards in the field using their
+ smartphones.
+
+ Description:
+ QCards was an effort to build a mobile app that would enable realtors
+ to create direct mail marketing campaigns from their phones while on
+ location at homes they represented. QCards allowed the realtor to
+ capture images of properties, set those images within a standardized
+ postcard template, define marketing campaign parameters using
+ existing business logic within Quantum's larger product offerings,
+ and submit an order.
+
+ In this role I was resonsible, with one coworker, for the
+ implmentation and testing of the mobile application. We initially
+ targeted iOS, then Android. In addition to the mobile development,
+ this required building out APIs in FoxPro to expose core business
+ functionality from the legacy codebase to the mobile application, as
+ well as implementing all of the associated logic for user
+ authentication, session management, etc.
+
+ Tools \& Technologies:
+ - Appcelerator Titanium SDK
+ - JavaScript
+ - jQuery
+ - iOS SDK
+ - Objective-C
+ - Android SDK
+ - Java
+ - Visual FoxPro
+
+ Colleagues \& References:
+ - Rory Derrick
+ - Dude Spellings
+ - Chris Anderson
+
+ HID Global:
+
+ Positions:
+ February 2012 \- September 2013: Staff Engineer
+
+ Description:
+ I was part of the team responsible for all software controlling and
+ supporting the production process, ranging from low-level machine control
+ and automation to server-oriented architecture that supplied production
+ software services such as key management, cryptographic services, and
+ configuration management.
+
+ I was brought onto this team at it's inception to help build out the
+ foundational infrastructure and software that would become the base of
+ HID's new approach to manufacturing control.
+
+ Projects:
+
+ Common Machine Control Framework:
+
+ Short Description:
+ Responsible for architecting and implemting a common framework for
+ production control. The goal was to create a modular platform that
+ could be used to marry common business and production logic with
+ machine-specific control and automation.
+
+ Description: >
+ HID had a wide range of different machines used in their production
+ processes and control software varied from machine to machine without
+ a unified approach. Control software being written in a variety of
+ languages (including C/C++, VisualBasic 6, and LabVIEW, among
+ others) made centralized support challenging and hampered efforts to
+ create a standardized process.
+
+ Our goal was to unify all of the machine control, creating a platform
+ that would allow us to create and leverage standardized modules for
+ common functionality such as:
+ - card programming
+ - access to standard services like cryptographic processing, key
+ management, order configuration, etc.
+ - physical personalization (printed graphics, etching, coating,
+ etc.)
+
+ To this end I designed and architected the common machine control
+ framework that provided a common base bridging machine-specific
+ control logic with the common modular library being written to
+ provide the standardized functionality of our platform.
+
+ As part of this architecture, the common framework provided a bridge
+ layer via C/C++ to allow communcation with machine control modules,
+ an embedded rich user interface layer built on HTML, CSS, and
+ JavaScript, and a plug-in architecture to simplify the inclusion of
+ standardized modules and services provided by the broader production
+ environment. The primary language of the framework itself was C#.
+
+ Tools \& Technologies:
+ - C#
+ - C/C++
+ - .NET
+ - HTML
+ - CSS
+ - JavaScript
+ - Backbone.js
+
+ Emperor Card Personalization Control:
+
+ Short Description:
+ Responsible for the initial implementation of the machine control
+ software for HID's new, custom-developed card personalization
+ machines from Emperor Tech. This was the first green-field
+ implementation using our new common machine control framework. This
+ required working with the Chinese vendor's technical staff to
+ properly implement the driver allowing HID's control software to
+ control the individual component elements of the hardware (motors,
+ vacuum grippers, etc.).
+
+ Description: >
+ HID partnered with Emperor Technologies in Chine to create a
+ purpose-built card personalization machine aimed at small-to-medium
+ production runs. The machine ran cards in batches of 50-100 (don't
+ remember exactly how many) and was intended to support rapid
+ transitioning from one order to the next, allowing manufacturing
+ personell to quickly run through a series of orders with minimal
+ re-configuration of the machine required.
+
+ Being a new machine, new control software was required. Emperor
+ Technologies supplied a low-level drive package that provided direct
+ access to the machine hardware. HID needed to create the software
+ that actually exercised the machine, coordinating all of the
+ individual hardware mechanisms (actuating motors, card grippers,
+ etc.) and providing the platform for the appropriate card programming
+ for each order.
+
+ I was the sole developer responsible for the end-to-end
+ implementation of the machine control software for the Emperor line
+ of production machines, leveraging the common machine control
+ framework. This was a particularly fun project as it required a truly
+ multi-threaded approach with soft real-time requirements. The Emperor
+ production machine has seven stations which operate and are
+ controlled in parallel, performing simultaneous actions:
+ - feed card in
+ - generic programming (application/batch-specific)
+ - card printing
+ - UV coating
+ - flip
+ - personalization programming (card-holder-specific)
+ - feed card to output
+
+ Our target goal was to produce one card per second, meaning each
+ station had to perform its function in less than a second. The
+ machine control software has to coordinate the actions (physical and
+ logical) of all stations, as well as track the progress and results
+ for each card throughout the process. In some cases we supported
+ double-sided printing and UV coating, meaning we had to coordinate
+ cards travelling in reverse direction as well as forward, to
+ accomodate moving back through the printing and coating stages after
+ being flipped.
+
+ Tools \& Technologies:
+ - C#
+ - .NET
+ - C/C++
+ - HTML
+ - JavaScript
+ - Backbone.js
+ - CSS
+ - Git
+
+ Common Card Programming Library:
+
+ Short Description:
+ In line with our goal of standardizing the manufacturing process, our
+ team was creating a standard library of functionality specific to
+ programming ISO 7816 and ISO 14443 cards, built around the .NET
+ platform, and targeting specifically the Boo language as a DSL for
+ smart card programming. As part of this effort I was responsible for
+ the implementation of standard operations involving card
+ communication and cryptographic operations.
+
+ Description:
+ ISO 7816 and ISO 14443 define the communication protocols used by
+ smart cards and readers. We built a standard library of functionality
+ to provided higher-level abstractions on top of the low-level
+ communication primitives defined in the ISO specs. In addition to
+ low-level bit manipulation-style logic used to create the protocol
+ data units (PDUs), we provided implementations of the common
+ cryptogrphic operations used in the communication protocol to
+ simplify the creation of card programming logic. We also included
+ bindings to our common environment configuration to expose, for
+ example, centralized HSM services, configuration management, and
+ end-to-end reporting to the runtime environment of our manufacturing
+ operations.
+
+ We exposed this standard library via a domain-specific language built
+ on top of the Boo language in the .NET ecosystem. This allowed us to
+ write code that adhered closely to the structure of the psuedo-code
+ one would write to perform the required operations when programming
+ or interacting with a smart card.
+
+ As part of the team which owned this standard library I was
+ personally responsible for implementing portions of the functionality
+ described above, particularly the authentication and handshake
+ mechanisms which allowed the reader and card to establish a secure
+ session, as defined in the ISO 7816 and ISO 14443 specifications.
+
+ Tools \& Technologies:
+ - Assymetric Cryptography
+ - Symmetric Cryptography
+ - C#
+ - Boo
+ - .NET
+ - ISO 7816
+ - ISO 14443
+ - Git
+
+ Card Programming \- Application and Personalization:
+
+ Short Description:
+ In addition to being responsible for the machine control software,
+ our team was responsible for the programming of the cards themselves,
+ both the code loaded as applications onto the cards themselves as
+ well as the code responsible for programming the cards with that
+ application code and configuring the card data for it's individual
+ owner.
+
+ Description: >
+ Personalization of smart cards typically involves two steps: the more
+ general application programming, and the card-holder specific
+ personalization. The application programming involves writing the
+ logic that will live in the card and perform the core card functions.
+ Card-holder specific personalization is the process of loading
+ personal identifying information into the application memory and
+ card-specific cryptographic key material, as well as potentiall
+ printing customer data onto the face or back of the card.
+
+ ISO 7816 and ISO 14443 define the communication protocols spoken by
+ the cards which must be used when programming in both steps.
+
+ Tools \& Technologies:
+ - ISO 7816
+ - ISO 14443
+ - Boo Language
+ - .NET
+ - C#
+ - Git
+
+ Colleagues \& References:
+ - Richard Dollet
+
+ 3M (contracted with Maxis Group):
+ Positions:
+ October 2013 \- October 2015: Software Engineer VI
+
+ Projects:
+
+ Next-generation Tolling Platform:
+
+ Short Description:
+ The next-generation tolling platform was a paradigm shift for 3M's
+ tolling business, moving away from devloping single-purpose solutions
+ towards a cloud-based, tolling-as-a-service model. I had a wide range
+ of responsibilities on this project, owning the architecture and
+ implementation of functionality across the entire stack from database
+ to front-end, serving as the team lead for the front-end developers,
+ and providing internal operational support for our development tools
+ and environment.
+
+ Description: >
+ The next-generation tolling platform was an initiative at 3M to
+ develop a cloud-native, multi-tenant, extensible software platform
+ pairing with newly developed tolling hardware. It was our goal to
+ create a system that could be used to support new RFPs and tolling
+ projects globally, moving away from a model where custom software was
+ required to be developed for each project with individual data
+ centers and operational environments. The desired end state would
+ require design and architecture of the physical systems but could
+ integrate directly into 3M's existing tolling platform.
+
+ I joined the team near to the beginning of the project. Our initial
+ task was to describe the system in detail sufficient for inclusion in
+ 3M's response to a current RFP for the state of Georgia's State Road
+ and Tollway Authority, which was to be our pilot project. Following
+ several weeks of technical writing and documentation, we began the
+ architecture and implementation of the platform.
+
+ My responsibilities on this project included:
+ - UI/UX team leadership. I providing the bulk of the front-end
+ implementation as well as directing and mentoring our two other
+ front-end developers.
+ - UI/UX design. I was the primary designer.
+ - DevOps. I managed the team's internal git server, our internal
+ maven and npm repositories, and the team's development environment
+ in AWS.
+ - Release management. I was responsible for defining our versioning
+ schema as well as building, versioning, and publishing our release
+ packages.
+ - Ownership of several of the core micro-serves, from architecture to
+ implementation. Specifically, I was responsible for the whole of
+ the Vehicle List Service (VLS), the Batch Processing Service (BPS),
+ and parts of both the Image Processing Service (IPS) and Lane Data
+ Administration Service (LDAS). This includes everything from the
+ REST API layer down to the database.
+ - Oversight and coordination of our offshore quality assurance team.
+ - Working with Georgia SRTA management and operations personell to
+ gather requirements for the initial product design and feedback on
+ iterations of the product as we were building it.
+
+ The core architecture was one of micro-services, where each component
+ service of the tolling software infrastructure would be broken out
+ into it's own horizontally-scalable service. Some examples:
+
+ - Vehicle List Service (VLS): This service was responsible for
+ managing the list of known vehicles and their associated data.
+ Key functions included the need to batch-import lists of tens
+ of millions of vehicles daily, the ability to quickly and
+ efficiently serve information about specific vehicle queries, and
+ the ability to publish updates to physical tolling endpoints.
+
+ - Image Processing Service (IPS): The IPS was a core component of
+ the overall solution which provided both automated and manual
+ review of toll point imagery. IPS provided a rich user interface
+ with purpose-built workflows for image review personell
+ responsible for identifying license plate and ownership
+ information in images where the automated system was unable to
+ identify the vehicle. IPS supported advanced queueing mechanisms
+ to support call-center-like operations, providing the ability to
+ evaluate the accuracy and efficiency of individual reviewers, the
+ ability to send sets of difficult images to multiple reviewers,
+ and the ability to tag and filter images according ti ad-hoc
+ metadata created by the reviewers. Using this, reviewers could
+ build up a set of images correlated to the same vehicle over
+ time.
+
+ - Lane Data Administration Service (LDAS): The LDAS was another
+ core component of the overall solution, tasked with aggregating
+ and organizing data provided by the individual toll points into a
+ coherent view of the system as a whole. In addition, it managed
+ the low-level communication with the toll point infrastructure.
+
+ LDAS had a sophisticated user interface that allowed tolling
+ operators to follow the aggregate flow of traffic through the
+ tollway in soft real time, including anomaly detection to alert
+ operations of exceptional conditions (wrong-way traffic, for
+ example). This interface also provided operators the ability to
+ manage the toll point infrastructure.
+
+ - Transaction Control Service (TCS): The TCS served as the single
+ source of truth for all transaction data. Transaction data was
+ the most important type of data managed by the system.
+ Originating from the LDAS, transaction data passed through most
+ of the other services in the solution, being enriched by data and
+ information provided by each service in turn. TCS was the
+ high-performance system of record for all transaction data.
+
+ - Batch Processing Service (BPS):
+
+ - File Store Service (FSS): This served as a distributed store of
+ arbitrary file data. This was built on many of the same
+ principles as AWS S3, and served as an abstraction on top of
+ multiple underlying storage systems (physical disk, AWS S3, and
+ database-backed blob storage).
+
+ - Naming Service: provided service discovery and canonical name
+ lookup.
+
+ Tools \& Technologies:
+ - AWS
+ - AWS EC2
+ - Apache Tomcat
+ - Backbone.js
+ - Bash
+ - CSS
+ - CentOS Linux
+ - Drools
+ - Elasticsearch
+ - Git
+ - HTML
+ - Hazelcast
+ - Hibernate
+ - J2EE
+ - JPA
+ - Java
+ - JavaScript
+ - LevelDB
+ - Oracle Database
+ - SQL
+ - XML
+ - XPath
+ - XSLT
+ - jQuery
+
+ Responsibilities:
+ - Architecture
+ - DevOps
+ - Full-stack Implementation
+ - Mentorship
+ - Requirements Gathering & Analysis
+ - Technical Leadership
+ - UI/UX Design
+
+ Internal Time-Reporting Tool:
+
+ Short Description:
+ As part of their effort to create a center of software excellence, 3M
+ designed their own time reporting tool that was then used across the
+ Motor Vehicle Systems and Solutions. For a few months I was given
+ technical ownership of the time reporting tool. In addition to
+ on-going maintenance and support, I refactored the application at a
+ foundational level, extending it to work transparently for multiple
+ divisions (originally there was no concept of work groups or
+ divisions). This enabled 3M to pusue cost-savings across multiple
+ division by replacing externally licensed software with this
+ internal tool.
+
+ Description:
+
+ Tools \& Technologies:
+ - ASP.NET
+ - CSS
+ - HTML
+ - JavaScript
+ - MS SQL Server
+ - SQL
+ - jQuery
+
+ Parking Software (ScanNet):
+
+ Short Description:
+ One of the projects that 3M inherited when it acquired Federal Signal
+ was their legacy parking lot management software, ScanNet. This was a
+ mature product more than 20 years old, made up of embedded control
+ software, server-side backend processing, and user-facing intrefaces,
+ with large-scale existing deployments at facilities rancing from
+ shopping centers to airports including a number of clients who were
+ still actively rolling out new deployments. As a part of those new
+ deployments there was functionality promised to clients that had not
+ yet been implemented. In addition to maintainence and support the
+ dev manager, my teammate, and I were responsible for addressing the
+ feature gaps between existing functionality and the promised
+ functionality. This allowed 3M to realize the revenue from contracts
+ that were contingent on delivery of promised functionality.
+
+ Tools \& Technologies:
+ - .NET
+ - C#
+ - C/C++
+ - MSBuild
+ - Power Builder
+ - Visual Basic 6
+ - x86 Assembly
+
+ Colleagues \& References:
+ - Ben Benson
+ - David Ferreira
+ - Anthony Barahona
+ - Glenn Dawson
+
+ Edgecase:
+ Positions:
+ November 2015 \& April 2017: Senior Software Engineer
+
+ Short Description:
+
+ Description:
+
+ Tools \& Technologies:
+ - AWS CloudFront
+ - AWS ElasticBeanstalk
+ - AWS RDS
+ - AWS Redshift
+ - AngularJS
+ - CSS3
+ - Elasticsearch
+ - Git
+ - HTML5
+ - JavaScript
+ - Node.js
+ - PostgreSQL
+ - Ruby
+ - Ubuntu Linux
+ - express.js
+ - macOS
+ - node.js
+
+ Colleagues \& References:
+ - Derrick Geeting
+ - Cameron Cooper
+ - Angell Tsang
+ - Jeffrey Dorrycott
+ - Ryan Moore
+ - Lee Goolsbee
+ - Michael Tran
+
+ SailPoint Inc:
+ Positions:
+ May 2017 \- March 2018: Senior Software Engineer
+
+ Tools \& Technologies:
+ - AWS DynamoDB
+ - AWS Kinesis
+ - AWS RDS
+ - Apache Flink
+ - CentOS Linux
+ - Docker
+ - Docker Compose
+ - Elasticsearch
+ - JAX-RS
+ - Java
+ - JavaScript
+ - MySQL
+ - SQL
+
+ Colleagues \& References:
+ - Joe DeVries
+ - Kameron Sween
+ - Trey Perry
+ - Rhutwij Tulankar
+
+ Fairway Technologies (now part of Accenture):
+ Positions:
+ April 2018 \- January 2020: Principal Consultant
+ January 2020 \- present: Assoc. Engineering Manager
+
+ Projects:
+
+ Cloudvirga:
+ Short Description:
+ Fairway partnered with Cloudvirga to deliver the next generation of
+ the their digital mortgage platform core product offering, built as
+ an Angular 6 application on top of their existing API backend. Given
+ the size of the team and account, we appointed two principal
+ engineers to lead this effort, myself and a colleague. While my
+ colleague was responsible for client-facing leadership and
+ communication, I was responsible for technical direction,
+ architecture, and leadership internally. In addition to my
+ responsibilities as the internal lead, I worked to build a close
+ relationship with the client's development team, working through the
+ challenges of growing their existing API approach to support the new
+ functionality designed for this next iteration of their product.
+
+ Description:
+ Tools \& Technologies:
+ - .NET
+ - AWS CloudFront
+ - AWS IAM
+ - AWS Route53
+ - AWS S3
+ - Angular
+ - C#
+ - CSS
+ - Elasticsearch
+ - HTML5
+ - JavaScript
+ - MS SQL Server
+ - SQL
+ - TypeScript
+
+ Responsibilities:
+ - Architecture
+ - Cloud Architecture
+ - DevOps
+ - Engineering Management
+ - Frontend Implementation
+ - Requirements Gathering & Analysis
+ - Team Composition
+
+ Cloudvirga ARRIVE:
+ Short Description:
+ After the initial effort to deliver their next-generation product,
+ Cloudvirga engaged the same team to help accelerate the development of
+ critical features in their existing product offering in order to meet
+ aggressive deadlines communicated to their clients. At this point I
+ was asked to become the overall delivery lead for the project. In
+ this capacity I worked closely with Cloudvirga's engineering
+ management to prioritize work and get it into the hands of our team.
+ We successfully delivered several major features ahead of schedule
+ allowing Cloudvirga to regain confidence with their clients who had
+ expressed concern at the anticipated schedule delay.
+
+ Description:
+ - Complex ASP.NET application straddling front and back.
+ - Complex existing backend database schema.
+ - Complex versioning schema as CV maintained multiple independant
+ branches of the code white-labeled for different clients with
+ differing feature sets.
+ - Aggressive timelines. Jumped immediately into fire-fighting
+ situations with CV engineering, helping them close several
+ high-visibility and high-priority defects the first week of
+ engagement. Continued to pick up new feature requirements, ramp up
+ on this complex environment and complete the first major feature
+ delivery inside of a month.
+
+ Tools \& Technologies:
+ - .NET
+ - C#
+ - ASP.NET
+ - jQuery
+ - HTML
+ - CSS
+ - SQL
+ - MS SQL Server
+
+ Responsibilities:
+ - Client Communications
+ - Delivery Lead
+ - Engineering Management
+ - Full-stack implementation
+ - Project Estimation (cost and timeline)
+ - Requirements Gathering & Analysis
+
+ Grant Country Principal Utility District:
+ Short Description:
+
+ Description:
+
+ Tools \& Technologies:
+ - Excel Power Query
+ - MS SQL Server
+ - PowerBI
+ - Microsoft Dynamics Great Plains
+ - Safe Software FME
+
+ Responsibilities:
+ - Database Architecture
+ - Requirements Gathering & Analysis
+ - Project Estimation (cost and timeline)
+ - Delivery Lead
+ - Reporting and Analysis
+
+ Smarter Balanced Tools for Teachers:
+ Short Description:
+ Tools for Teachers was
+
+ Description:
+ Smarter Balanced Assessment Consortium (SBAC) had a successful
+ history of partnering with Fairway Technologies for development and
+ delivery of technology surrounding their core assessment products.
+
+ Tools \& Technologies:
+ - AWS CloudFront
+ - AWS IAM
+ - AWS S3
+ - AWS CodeBuild
+ - AWS Route53
+ - Terraform
+ - Angular
+ - TypeScript
+ - HTML5
+ - CSS3
+ - SCSS
+ - REST API
+ - API Platform
+ - PHP
+
+ Responsibilities:
+ - Frontend Implementation
+ - Cloud Architecture
+ - DevOps
+ - Delivery Lead
+ - Requirements Gathering & Analysis
+ - Project Estimation (cost and timeline)
+ - Engineering Management
+ - Project Staffing
+ - Project Management
+
+ Chevron IAM Migration:
+ Short Description:
+
+ Description:
+ - Chevron wanted to migrate from Ping Federate onto Microsoft Azure
+ Enterprise Applications for SSO.
+ - Established a standard process and trained additional team members
+ in it's use.
+ - Migrated hundreds of applications within a six month period
+ (beating the deadline by three months).
+ - Worked with internal Chevron application owners (often
+ non-technical) and vendor support to perform the migration.
+
+ Tools \& Technologies:
+ - Azure Enterprise Applications
+ - PingFederate federation server
+
+ Responsibilities:
+ - Customer Service
+ - Requirements Gathering & Analysis
+ - Vendor Management
+ - IAM Consulting
+ - IT Operations
+
+ Tegra118 Unified Wealth Platform:
+ Short Description:
+ The Unified Wealth Platform (UWP) was a web-based software offering
+ for financial adviser and brokerages that allowed them to trade and
+ manage their customer's financial investments. Tegra was on their
+ second re-write of the front-end portions of the product when I
+ was brought in as the delivery lead for the project. It was again in
+ danger of failing due to unclear requirements, lack of architecture
+ and planning, undocumented APIs and system behavior,
+ overly-complicated backend systems, and unrealistic customer-facing
+ deadlines.
+
+ Through concerted effort, we were able to clarify the
+ requirements and align testing efforts to the documented
+ requirements, we were able to document large portions of the API,
+ adding strong typing to assist in correctness, and we put into place
+ fundamental architectural thinking. Along the way we navigated
+ competing stakeholder priorities, serious COVID disruptions, and
+ continual environmental disruptions. At the same time I had to build
+ a new team from the ground up as the client objected to plans of my
+ predecessor, requiring us to go back to the drawing board with regard
+ to staffing.
+
+ In the end we were able to work with the client stakeholders through
+ necessary schedule adjustments and coach their leadership through the
+ trade-offs that we were forced to make given the schedule. We
+ successfully transitioned the project from a waterfall-style,
+ plan-every-day release schedule and deliverables with predefined
+ release dates and scope to a more Agile method of rolling releases on
+ a regular cadence. Despite the unrealistic internal deadlines, we
+ were able to find a path to deliver almost all of the originally
+ promised functionality to the customer within the original customer
+ timeline, or with slight delays (on the order of weeks).
+
+ The successful delivery of this project was a direct result of the
+ continual, extraordinary effort put in by the team, and my efforts to
+ provide clarity and direction across all aspects of the product
+ development.
+
+
+ Description:
+ Tegra's main product has a heritage reaching back over forty years,
+ with the core of their product offering still running APL code on IBM
+ AIX mainframes. Over time they have built up layers on top of this
+ core and today offer their product as a SaaS-like web application
+ called the Unified Wealth Platform (UWP). A previous vendor built the
+ 1.0 version of the UWP, the latest version of their offering packaged
+ as a web application. Unfortunately Tegra found that version to
+ be very difficult to maintain and extend, and they decided to rebuild
+ the application with new designs, updated requirements, and explicit
+ quality targets. Their hope is to have a foundation on which they can
+ continue to build into the future.
+
+ Due to tight timelines and scope miscommunications, the project was
+ almost dead before it could get off the ground. Tegra initially
+ scoped the project as a rapid prototyping effort, making clickable
+ demoes of mockups in progress to allow business to iterate quickly on
+ different ideas. All of the architectural choices reflected this
+ preference for rapid turnaround and iteration (for example,
+ purposefully forgoing common UI components in favor of copy/paste and
+ tweak). At this point Tegra still expected to be able to refactor
+ their existing 1.0 codebase to match the designs and prototypes being
+ created.
+
+ In time it became apparant that they would not be able to use the 1.0
+ codebase as a foundation for the new designs. Hard delivery deadlines
+ had already been communicated to Tegra's customers. Due to this time
+ pressure, the decision was made to take the prototype codebase and
+ flesh it out into a propoer 2.0 release of the UWP.
+
+ The original team staffed did not have anyone with experience running
+ a large-scale, end-to-end product delivery effort like this and the
+ team quickly found themselves behind schedule and over-committed.
+
+ Tools \& Technologies:
+ - Angular 10
+ - Azure DevOps
+ - Figma
+
+ Responsibilities:
+ - Engineering Management
+ - Delivery Lead
+ - Frontend Implementation
+ - DevOps
+ - Requirement Gathering & Analysis
+ - Project Estimation
+ - Project Staffing
+ - Project Management
+ - Scrum Master
+ - Architecture
+ - Technical Writing
+
+ Colleagues \& References:
+ - Steve Mock
+ - Noah Heldman
+ - Ben Heebner
+ - Cullan Bittner
+ - Landon Lunsford
+ - Aaron Sleeper
+ - Ernie Munoz-Diaz
+ - Jeff Treuting
+ - Natasha Lopez
+ - Ryan Anderson
+ - Brandon Savage
+ - Shreedam Parikh
+ - Amy Thierry
+ - Nohemi Acosta
+ - Walton Yeung
+ - Jeff Getzin
+ - Shankar Ramachandran
+ - Jessica Müller
+ - Ashish Nageet
+ - Chia-Yen Wu
+ - Prashanti Dasari
+ - Jacob Sonsteng
+
+Other Projects:
+ UPCI Wall of Honor:
+ Short Description:
+
+ Description:
+
+ Tools \& Technologies:
+ - AWS Lambda
+ - AWS DynamoDB
+ - AWS CloudFront
+ - AWS S3
+ - AWS CodeBuild
+ - AWS API Gateway
+ - AWS VPC
+ - Vue.js
+ - HTML5
+ - CSS3
+ - SCSS
+ - TypeScript
+ - REST API
+ - Bash
+ - Make
+ - Git
+ - REST API
+ - Terraform
+ - Okta IAM
+ - Figma
+
+ Responsibilities:
+ - Graphic Design
+ - UI/UX Design
+ - Full-stack Implementation
+ - Cloud Architecture
+ - DevOps
+ - Database Administration
+ - Delivery Lead
+ - Project Management
+ - Requirements Gathering & Analysis
+ - Contract Negotiation
+ - Customer Service
+ - End-user Training
+ - Project Estimation (cost and timeline)
+ - Client Communications
+
+ StrawBoss Continuous Integration Server:
+ Short Description:
+
+ Description:
+
+ Tools \& Technologies:
+ - Nim
+ - Jester
+ - Docker
+ - Linux
+ - systemd
+ - REST API
+ - Bash
+ - Make
+
+ VBS Suite:
+ Short Description:
+
+ Description:
+
+ Tools \& Technologies:
+ - Erlang
+ - JavaScript
+ - Backbone.js
+ - Mnesia
+ - HTML5
+ - CSS3
+ - SCSS
+ - JavaScript
+ - Backbone.js
+ - REST API
+ - Bash
+ - Make
+ - Git
+
+ New Life Songs Database:
+ Short Description:
+
+ Description:
+
+ Tools \& Technologies:
+ - Groovy
+ - JavaScript
+ - AWS ElasticBeanstalk
+ - HTML5
+ - CSS3
+ - SCSS
+ - JavaScript
+ - REST API
+ - Git
+ - Bash
+ - Make
+ - Figma
+
+ Responsibilities:
+ - UI/UX and Design
+ - Architecture
+ - Full-stack Implementation
+ - DevOps
+ - Database Administration
+
+ SermonLink.net:
+ Short Description:
+
+ Description:
+
+ Tools \& Technologies:
+ - Groovy
+ - JavaScript
+ - Backbone.js
+ - HTML
+ - CSS3
+ - SCSS
+ - REST API
+ - PostgreSQL
+ - Git
+ - Bash
+ - Make
+ - Figma
+
+ Responsibilities:
+ - UI/UX and Design
+ - Architecture
+ - Full-stack Implementation
+ - DevOps
+ - Database Administration
+
+ Personal Measure:
+ Short Description:
+
+ Description:
+
+ Tools \& Technologies:
+ - Nim
+ - Jester
+ - Vue.js
+ - TypeScript
+ - HTML5
+ - CSS3
+ - SCSS
+ - REST API
+ - PostgreSQL
+ - Git
+ - Bash
+ - Make
+ - Figma
+
+ Live Budget:
+ Short Description:
+
+ Description:
+
+ Tools \& Technologies:
diff --git a/html-interactive/index.html b/html-interactive/index.html
index 1aa43da..a9e5bbc 100644
--- a/html-interactive/index.html
+++ b/html-interactive/index.html
@@ -10,7 +10,7 @@
@@ -197,7 +204,7 @@
for the problem, and I continue to enjoy working with tools and
languages that build on the JVM and the Java ecosystem. I feel
very confident about my ability to immediately contribute in
- this language.
+ this language.
I am a Principal-level Software Engineer and Engineering Manager with
+ a deep background in product development from ideation to delivery.
+
I have a proven track record of leading high performance,
+ cross-functional product teams and I excel at creating clear
+ communication between all parties involved in product specification,
+ design, and delivery.
+
With my broad technical expertise drawn from a wide range of industry
+ experience, I am confident in my ability to guide engineering efforts
+ through challenging opportunities. I am still glad to roll up my sleeves
+ and put in the hard work personally to ensure that things get done.
+
In either a leadership role or as an individual contributor, I am
+ looking for an opportunity to work in an environment that provides the
+ autonomy for me and my team to do our best work. At this point in my
+ career I would like to be a part of building something—product or
+ organization—that will have longevity. I look forward to creating
+ high-quality, fit-for-purpose software solutions that will meet today's
+ business needs and stand the test of time.
+
+
+
+
+
Key Skills
+
+
Project Management
+
+
Requirement Gathering and Analysis
+
Estimation and Cost Analysis
+
Communication
+
Building Client & Customer Relationships
+
Technical Writing & Documentation
+
Product Planning & Prioritization
+
+
+
Leadership
+
+
Team Building
+
Remote-Friendly Team Culture
+
High-Performance Team Culture
+
Growth-Focused Mentorship
+
Conflict Resolution
+
+
+
Technical Leadership
+
+
Agile Development Methodology
+
Operational Excellence
+
Automation of Standard Process
+
+
+
+
+
+
+
Core Technologies
+
+
+
Languages
+
+
TypeScript
+
JavaScript
+
Java
+
C#
+
SQL
+
Erlang
+
Nim
+
+
+
+
+
Web Technologies
+
+
HTML5
+
CSS3
+
HTTP
+
REST
+
WebSockets
+
Accessibility (WCAG)
+
+
+
+
+
Cloud Architecture and Infrastructure
+
+
Amazon Web Services (AWS)
+
Microsoft Azure
+
Terraform
+
Docker
+
+
+
+
+
Databases & Persistence
+
+
Relational
+
+
PostgreSQL
+
Oracle
+
MS SQL Server
+
MySQL
+
SqlLite
+
+
+
+
+
No-SQL
+
+
CouchDB
+
MongoDB
+
Elasticsearch
+
Mnesia
+
LevelDB
+
+
+
+
+
+
Front-End Frameworks & Libraries
+
+
Vue.js
+
Angular (1.x and 2+)
+
React
+
jQuery
+
Backbone.js
+
+
+
+
+
Development Tools
+
+
Version Control (Git, SVN, CVS, etc.)
+
Maven
+
Gradle
+
MSBuild
+
Unix/Linux
+
OpenBSD
+
+
+
+
+
Other Technologies
+
+
Applied Cryptography
+
Identity & Access Management
+
SmartCards (ISO 7816 & ISO 14443)
+
+
+
+
+
+
+
+
Work Experience
+
+
Accenture
+
Platform & Product Engineering Services
+ Associate Engineering Manager
+ January 2020 - present
+
+
My work at Accenture has been an extension and expansion of the
+ work I was doing at Fairway prior to our acquisition. Through
+ Accenture I have been exposed to larger organizations and led larger
+ teams.
+
Key projects:
+
+
Universal Weath Platform (see above)
+
Enterprise IAM Migration
+
Sales Engineering Support
+
+
+
+
+
Fairway Technologies
+ Principal Consultant
+ April 2018 - January 2020
+
+
As a Principal Consultant I led a number of successful project
+ deliveries for our clients. The engagement lead role at Fairway was
+ the position ultimately responsible for all aspects of project
+ delivery including team leadership, timeline and budget estimation,
+ requirements gathering and documentation, system architecture and
+ design, and implementation.
+
Key projects:
+
+
Next-generation Digital Mortgage Platform (see above)
+
Public Utility District analytics and monitoring project
+
Digital Library(see above)
+
+
+
+
+
Sailpoint Inc.
+
IdentityAI
+ Senior Software Engineer
+ May 2017 - March 2018
+
+
IdentityAI was a new initiative at Sailpoint to leverage the large
+ data sets of security events, activities, and information already
+ capptured by Sailpoint's existing product lines to feed a
+ machine-learning based system capable of automatically identifying
+ critical security issues, performing real-time anomaly detection, and
+ suggesting options for remediation before compromise. I was brought
+ onto the team near the beginning of the project and was responsible
+ for the architecture and implementation of several of the core
+ micro-services that made up the solution.
+
+
+
+
Edgecase Inc.
+ Senior Software Engineer
+ November 2015 - April 2017
+
+
Edgecase was building a B2B service providing product
+ attribution at scale enabling an Amazon-like shopping experience
+ for companies expanding into e-commerce. The engineering team at
+ Edgecase was responsible for all aspects of the technical
+ infrastructure, product development, and last-line technical
+ customer support. Because of the small size of the team, I was
+ responsible for all aspects of the product we were building.
+
+
Responsibilities:
+
+
Full-stack implementation
+
Requirements Gathering & Analysis
+
Technical Leadership
+
DevOps
+
Mentorship
+
+
+
+
Key Technologies:
+
+
AWS (CloudFront, ElasticBeanstalk, RDS, Redshift)
+
node.js
+
Ruby
+
PostgreSQL
+
Elasticsearch
+
Angular.js
+
express.js
+
+
+
+
+
+
+
+
+
+
3M
+
Traffic Safety Systems Division
+ Software Engineer VI
+ October 2013 - October 2015
+
+
I joined 3M during their attempt to break into the market for
+ software solutions covering all aspects of transportation
+ infrastructure. With my ability to come up to speed quickly in
+ complicated environments, I was often moved between projects,
+ going where there was the greatest need for immediate impact.
+ Finally I was attached to the next-generation tolling effort as a
+ technical lead and architect.
+
Key projects:
+
+
Next-generation tolling platform (see above)
+
ScanNet
+
Kansas DMV Back-office
+
Internal time-reporting tool
+
+
+
+
+
+
HID Global
+
Personalization Infrastructure
+ Staff Engineer
+ February 2012 - September 2013
+
+
I was part of the team responsible for all software controlling and
+ supporting the production process, ranging from low-level machine control
+ and automation to server-oriented architecture that supplied production
+ software services such as key management, cryptographic services, and
+ configuration management.
+
+
I was brought onto this team near it's inception to help build out the
+ foundational infrastructure and software that would become the base of
+ HID's new approach to manufacturing control.
+
+
Key projects:
+
+
Common machine control framework
+
Emperor machine control implementation
+
SmartCard-programming standard library
+
+
+
+
+
+
QuantumDigital.com
+ Systems Developer
+ August 2010 - February 2012
+
+
Responsible for supporting the legacy order and fullfilment
+ systems and migrating these systems to modern technology.
+ Launched the company's first mobile app.
+
Key projects:
+
+
Quantum Post Cards
+
QCards Mobile
+
+
+
+
+
+
Gemalto
+
Solutions and Special Projects
+ Software Architect and Developer
+ June 2005 - August 2010
+
+
Responsible for finding solutions to new problems, developing
+ custom solutions for customer problems, and providing tools and
+ support to other development teams.
+
Key projects:
+
+
U.S. E-Passport Manufacturing (see above)
+
Custom Card Procurement Service
+
Internal Manufacturing Reporting Framework
+
Cryptographic Service Implementation
+
+
+
+
+
+
Freescale Semiconductor
+
Hardware/Software Development
+ Summer Intern / Contractor
+ June 2004 - October 2004
+
+
+
+
+
+
+
Select Projects
+
+
Unified Wealth Platform
+
Accenture - Financial Services Client
+
+
The Unified Wealth Platform (UWP) was a web-based software offering
+ for financial adviser and brokerages that allowed them to trade and
+ manage their customer's financial investments. Tegra was on their
+ second re-write of the front-end portions of the product when I was
+ brought in as the delivery lead for the project. It was again in danger
+ of failing due to unclear requirements, lack of architecture and
+ planning, undocumented APIs and system behavior, overly-complicated
+ backend systems, and unrealistic customer-facing deadlines.
+
+
Through concerted effort, we were able to clarify the requirements
+ and align testing efforts to the documented requirements, we were able
+ to document large portions of the API, adding strong typing to assist
+ in correctness, and we put into place fundamental architectural
+ thinking. Along the way we navigated competing stakeholder priorities,
+ serious COVID disruptions, and continual environmental disruptions. At
+ the same time I had to build a new team from the ground up as the
+ client objected to plans of my predecessor, requiring us to go back to
+ the drawing board with regard to staffing.
+
+
In the end we were able to work with the client stakeholders through
+ necessary schedule adjustments and coach their leadership through the
+ trade-offs that we were forced to make given the schedule. We
+ successfully transitioned the project from a waterfall-style,
+ plan-every-day release schedule and deliverables with predefined
+ release dates and scope to a more Agile method of rolling releases on a
+ regular cadence. Despite the unrealistic internal deadlines, we were
+ able to find a path to deliver almost all of the originally promised
+ functionality to the customer within the original customer timeline, or
+ with slight delays (on the order of weeks).
+
+
The successful delivery of this project was a direct result of the
+ continual, extraordinary effort put in by the team, and my efforts to
+ provide clarity and direction across all aspects of the product
+ development.
+
+
Responsibilities:
+
+
Engineering Management
+
Customer Relationship
+
Project Management
+
Estimation and Cost Analysis
+
Requirements Gathering & Analysis
+
Frontend Implementation
+
Team Building and Composition
+
Project Staffing
+
Technical Writing
+
+
+
+
Key Technologies:
+
+
Angular 10
+
Azure DevOps
+
TypeScript
+
HTML
+
SCSS
+
Kendo UI for Angular
+
C# (.NET)
+
+
+
+
+
+
+
Digital Mortgage Platform
+
Fairway - Mortgage Lender
+
+
Fairway was brought in to deliver the next generation of the
+ client's core product offering (a web-based mortgage application
+ platform). As a follow-on to that delivery, the client engaged our
+ team to help accelerate the development of critical features in their
+ existing product offering in order to meet aggressive deadlines
+ communicated to their clients. As the overall delivery lead I worked
+ closely with the client's engineering management to prioritize work
+ and get it into the hands of our team. Our delivery of functionality
+ ahead of scheduled allowedour client to regain confidence with their
+ customers who had expressed concern at the anticipated schedule
+ delay.
+
+
Responsibilities:
+
+
Engineering Management
+
Customer Relationship
+
Cloud Architecture
+
Requirements Gathering & Analysis
+
Full-stack Implementation
+
Team Building and Composition
+
Project Staffing
+
Project Management
+
+
+
+
Key Technologies:
+
+
AWS
+
.NET (C#, ASP.NET)
+
MS SQL Server
+
JavaScript
+
HTML
+
CSS
+
+
+
+
+
+
+
+
Select Projects (continued)
+
+
Digital Library
+
Fairway - Education Organization
+
+
The Digital Library project was a green-field redesign of an
+ existing product our client provided to their teachers based on
+ feedback they had gathered. I was the delivery lead for this project,
+ managing a cross-functional team including a UI/UX designer, QA
+ engineers, a project manager, and several developers. Though the
+ client product owner we worked with had no prior experience in
+ product development, we were able to establish an effective Agile
+ process for gathering requirements, prioritizing work, and gathering
+ feedback.
+
+
Shortly after beginning the project in earnest we realized that a
+ majority of the assumptions the client had made about the backend
+ system in place were incorrect, leading to a complete invalidation of
+ the original project timeline. We were able to work with the client's
+ product owner and technical teams to identify the backend gaps,
+ provide guidance on a new project plan, and provide implementation
+ support from our team.
+
+
We delivered this project on time and on budget according to the
+ revised project plan.
+
+
Responsibilities:
+
+
Engineering Management
+
Customer Relationship
+
Cloud Architecture
+
Requirements Gathering & Analysis
+
Full-stack Implementation
+
Team Building and Composition
+
Project Staffing
+
+
+
+
Key Technologies:
+
+
AWS
+
Angular 8+
+
TypeScript
+
HTML
+
SCSS
+
API Platform
+
Terraform
+
+
+
+
+
+
+
Next-Generation Tolling Platform
+
3M
+
+
The next-generation tolling platform was a paradigm shift for 3M's
+ tolling business, moving away from devloping single-purpose solutions
+ towards a cloud-based, tolling-as-a-service model. I had a wide range
+ of responsibilities on this project, owning the architecture and
+ implementation of functionality across the entire stack from database
+ to front-end, serving as the team lead for the front-end developers,
+ and providing internal operational support for our development tools
+ and environment.
+
+
Responsibilities:
+
+
Architecture
+
Full-stack Implementation
+
Technical Leadership
+
Requirements Gathering & Analysis
+
Technical Writing
+
UI/UX Design
+
+
+
+
Key Technologies:
+
+
AWS
+
CentOS Linux
+
Backbone.js
+
Java J2EE
+
+
+
+
+
+
+
U.S. E-Passport Manufacturing
+
Gemalto
+
+
Gemalto has been a primary supplier to the GPO since the inception
+ of the U.S. E-Passport. I was part of the initial team creating the
+ E-Passport technology as well as extending and customizing our usual
+ manufacturing process for the GPO's unique needs.
+
+
Responsibilities:
+
+
Database Administration & Schema Design
+
Backend Implementation
+
Performance Optmization
+
+
+
+
Key Technologies:
+
+
Java
+
Java Cryptography Architecture (JCA)
+
Java Database Connectivity (JDBC)
+
Oracle Database
+
ISO 14443 Smart Cards
+
+
+
+
+
+
+
+
+
+
Education
+
University of Texas at Austin
+
100+ hours completed towards a B.S. in Computer Science
+
+
+
+
+
References
available on request.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/resume.tex b/resume.tex
index 2b8f9f5..cd7470a 100644
--- a/resume.tex
+++ b/resume.tex
@@ -67,7 +67,7 @@
\item Performing DevOps responsibilities wrt. our deployed environments on
AWS,
\item Direct implementation of the web-based application that is the gateway
- to our primary product,
+ to our primary product,
\item Mentoring junior devs and being responsible for overall code
quality.
\end{resplist}
@@ -112,10 +112,10 @@
\vspace{60mm}
\item Maintaining a very old (20+ years) facility management product still
- in regular use by customers. This was a unique challenge as the project
- integrates components written in over 8 different languages, C being the
- most common, and C\# .NET being the most recent. It also required expertise
- in embedded hardware control.
+ in regular use by customers (ScanNet). This was a unique challenge as the
+ project integrates components written in over 8 different languages, C
+ being the most common, and C\# .NET being the most recent. It also
+ required expertise in embedded hardware control.
\end{resplist}
\textbf{Staff Engineer} \hfill \textbf{February 2012 -- September 2013}\\
@@ -150,7 +150,7 @@
FoxPro table files.
\item Creating several tools to reduce the time spent managing support
requests made of the development team.
- \item Participating in the planning and design of the next generation
+ \item Participating in the planning and design of the next generation
of the core order placement and fulfillment software
(see \texttt{http://quantumpostcards.com}).
\item Designing and developing the companies first mobile application, with
@@ -192,7 +192,7 @@
\item Developing hardware diagnostics scripts pertaining to Intel 31154 PCI
bridge chip, DDR memory test.
\item Performing schematic capture activities using Mentor's Design
- Architect. Assistance helped to accelerate and beat schedule requirements.
+ Architect. Assistance helped to accelerate and beat schedule requirements.
\item Designing high quality schematic symbols for use by the hardware
design community.
\item Misc. endeavors - Assisting lab technicians in customer shipments.
@@ -234,12 +234,12 @@
%__________________________________________________________________________
% Referees
-% \section{\mysidestyle Referees}
+% \section{\mysidestyle Referees}
% {\sl Available on request.}
%______________________________________________________________________________
-%\section{\mysidestyle Referees}
+%\section{\mysidestyle Referees}
%
%\begin{tabular}{@{}p{6cm}p{6cm}}
%\textbf{Ben Benson} & \textbf{Mridul Sharma} \\
@@ -266,4 +266,3 @@
%______________________________________________________________________________
% EOF
-
diff --git a/resume2.tex b/resume2.tex
index 7b5ade0..90a2848 100644
--- a/resume2.tex
+++ b/resume2.tex
@@ -43,10 +43,10 @@
ASP.NET, JSF, Ruby on Rails \\
\textsl{In-browser}: Angular 1, React.js, Backbone.js, jQuery,\\
\textsl{Data Processing}: Amazon Kinesis, Apache Flink
-
+
\textbf{Web Technologies}\\
HTTP, REST, WebSockets, SOAP, WSDL
-
+
\textbf{Development \& Testing Tools}\\
Git, Gradle, Apache Ant and Gant, Apache Ivy, Apache Maven, Jenkins,
JUnit (xUnit, EUnit), Cucumber
@@ -60,11 +60,11 @@
\textbf{Databases}\\
\textsl{RDBMS}: SQL, PostgreSQL, AWS RDS, MS SqlServer, Oracle, MySQL, HSQLDB, SqlLite \\
- \textsl{NoSQL}: AWS DynamoDB, MongoDB, AWS Redshift, Mnesia, LevelDB, CouchDB,
+ \textsl{NoSQL}: AWS DynamoDB, MongoDB, AWS Redshift, Mnesia, LevelDB, CouchDB,
\textbf{IDEs \& Environments}\\
VI(m), Eclipse, VisualStudio, NetBeans
-
+
%__________________________________________________________________________
% Professional Experience
\section{\mysidestyle Professional\\Experience}
@@ -109,7 +109,7 @@
\item Performing DevOps responsibilities wrt. our deployed environments on
AWS,
\item Direct implementation of the web-based product that is the gateway to
- our primary product.
+ our primary product.
\item Mentoring junior devs and being responsible for overall code
quality,
\end{resplist}
@@ -189,7 +189,7 @@
\item Developing a Java library to interface directly with legacy
FoxPro table files.
\item Automation of common support requests fielded by the development team.
- \item Participating in the planning and design of the next generation
+ \item Participating in the planning and design of the next generation
of the core order placement and fulfillment software (see
\texttt{http://quantumpostcards.com}).
\item Developing the company's first mobile application
@@ -223,7 +223,7 @@
\textbf{Summer Intern / Contractor} \hfill \textbf{June 2004 -- Oct 2004}\\
\textbf{Freescale Semiconductor (Hardware/Software Development)}, Austin, TX \\
Notable accomplishments included: developing hardware diagnostics scripts,
- schematic capture using Mentor Degisn Architect, assisting lab technicians.
+ schematic capture using Mentor Degisn Architect, assisting lab technicians.
%__________________________________________________________________________
% Ongoing Personal Development
@@ -236,7 +236,7 @@
church's yearly Vacation Bible School. This tool was used over a ten-year
period primarily by non-technical volunteers and received praise for its
ease-of-use and for increasing productivity.
-
+
Over it's lifetime the tool evolved from a desktop-based application
coordinating with a centrally-managed database to it's current SaaS
architecture: a single-page web application written primarily in React.js
@@ -263,7 +263,7 @@
%__________________________________________________________________________
% References
- \section{\mysidestyle References}
+ \section{\mysidestyle References}
\begin{tabular}{@{}p{6cm}p{6cm}}
\textbf{Ben Benson} & \textbf{Cameron Cooper} \\
@@ -283,4 +283,3 @@
%______________________________________________________________________________________________________________________
% EOF
-