R.J. Lorimer
- [email protected]
- (913) 375-3733
- Overland Park, KS
- realjenius.com
- cv.realjenius.com
- linkedin.com/in/rjlorimer
- github.com/realjenius
Skills
Systems
Kubernetes, KNative, Kafka, gRPC, Istio, Actors, Reactive, Stateless, CI/CD, Zero-Downtime, Feature Flags, Consensus and PartitioningProgramming
Java, Kotlin, JS, TS, C#, Go, Functional, OO, ConcurrencyWeb
REST, OpenAPI, GraphQL, SPA (Angular, React), SSE, WebsocketsDB
RDBs: MySQL, Postgres, Oracle, NoSQL: C*, Mongo, Google Datastore, Spanner, In-Memory: Redis, HazelcastObservability
OpenTelemetry, ELK, Influx, Prometheus, Various APMsEducation
Computer Science, BIT UMKC
2001-2003 (Earned Credits)
Computer Science KU
2000-2001 (Earned Credits)
References Upon Request
Not Willing to Relocate
Please Do Not Contact My Current Employer Without My Consent
Personal Info
I am a highly respected software development lead and architect, with over twenty years of deep experience in a variety of roles and technologies, and a passion for getting things done quickly, the right way.
Work Experience
AtomicJar, Inc.
Virtual
Principal Platform Engineer
05.2023 - Current
Role: Principal Engineer for the cloud runtime of Testcontainers Cloud (TCC)
- VM orchestration across 40 separate edge data-centers, across multiple clouds
- Automated integration with AWS, GCP, Vultr, and Azure cloud providers
- Secure provisioning of cloud workers for containerized test runtime execution
- Highly-Available Platform for Several Major Organizations' CI/CD Pipelines
- More than 100,000 Worker Runtimes Leased Per Month to Customers
Key Details:
- Full Adoption of and migration to Datadog for telemetry on complex distributed system
- Implemented support for reusable VMs (pre-warmed by previous executions)
- Sole full-time devops engineer maintaining deployment of 40 data-centers
- Orchestrated true gitops-based runtime with multiple deploys per day
- Multiple enhancements and fixes to sophisticated infrastructure including a variety of bleeding edge tools, including: Firecracker, Kilo, Cluster API, Cluster Autoscaler, Machine Controller, Kubernetes-in-Docker, among others
- Created a robust and scalable stateful VM tracking runtime using Akka
- Built tools for secure proxying of test runtimes through corporate firewalls to cloud worker runtimes
- Evangelized AtomicJar's products at developer conferences
UKG, Inc. (Formerly Ultimate Software)
Virtual
Principal Architect
01.2021 - 05.2023
Sr. Engineer; Technical Lead
08.2017 - 01.2021
Role: Principal architect for six teams building leading talent management products. Lead champion and original author for predominant JVM microservice chassis for organization
- Architect for over 80 engineers and over 50 independently deployed services in department
- Primary developer for microservice chassis used by at least 15 separate teams (300+ developers) in the organization
- Evangelist for Kotlin, Kafka, and lightweight services at organization
Key Details:
- Joined messaging working group and evangelized use of Kafka, multi-DC star topology, and UKG-centric variant of CloudEvents “envelope” standard
- Lead team to develop services using Kotlin stack; surfaced chassis for org-wide use
- Contribute to chassis growth and adoption for sophisticated use-cases
- Key examples: high throughput multi-replica-friendly Mongo and SQL transactional outbox model, custom open-telemetry support, server-side ops with feature flags via LaunchDarkly, custom SDKs for internal services, idempotent “live-replay” solution for event sourcing
- Standardized inner-sourced support for chassis; multiple other libraries
- Perform architecture, design, and hands-on dev for six product teams, including high-level designs, ADRs, and hands-on coaching
- Trained dozens of Java, Go, and C# developers on Kotlin
- Developed hybrid-cloud distributed scheduler with private-cloud Mongo+Kafka implementation and abstraction for public cloud schedulers
- Educated multiple teams on benefits of event-sourcing for system isolation and stability. Pushed for simplicity in multiple areas (ex: don't default to using CQRS unless benefits are well-established)
High 5 Games
Virtual
Director of Technology: Server
05.2016 - 08.2017
Lead Developer
03.2014 - 05.2016
Role: Lead a team of twelve JVM developers to build fully custom social gaming backends under significant daily traffic
- Social Platforms Spanning 950,000 daily users, 15m registered
- 4000+ transactions per second, every hour of every day of the year
- 5 social game platforms, 200 distinct games on a unified backend
Key Details:
- Reengineered monolith into distributed, horizontal architecture. Demonstrated Savings over $1.2M/year in hosting and ops, and also faster
- Retrofit SSO solution into platform allowing unified identity across Social platforms, browser, and mobile experience
- Incrementally added zero-downtime CI/CD into server and client platforms, with feature flags and staggered rollout cohort functionality; migrated to containerized Kubernetes runtime from VMs
- Introduced Kafka as backbone for inter-service comms, as well as analytics event stream
- Migrated key game services from legacy MySQL backends to Cassandra. Trained team on NoSQL practices and methodology; Generated data lake of player event history for analytics and gamification AI
- Designed high contention multiplayer stateful game simulations, including: tournaments, multiplayer jackpots, daily bonuses, and player gifting
- Optimized to 99th percentile response time to 10-20ms range for primary game functionality in PROD social environments
- Evangelized Datadog for fully integrated metrics, alerts, and health
- Enforced 75+% code coverage on multi-million line codebase with high-quality Sonar metrics
MindPirate
Virtual
Principal Backend Engineer
04.2013 - 03.2014
Role: Primary developer for all backend services for the MindPirate gaming and wearable ecosystem. R&D on direction for current and future wearable devices, such as Google Glass, Moverio, Meta Pro, Gear, Apple Watch, and various fit bands available at the time.
Key Details:
- Developed all multiplayer game logic and cross-service integration for“Global Food Fight” on iOS, Android, and Google Glass AR. Features included: appointments, recipes, skill trees, in-game store, inventory, asynchronous attack/retaliate game model
- Integrated Apple Push, Google Cloud Messaging, Google Glass Mirror API, and Google Cloud Storage for management of game notifications and assets
- Built distributed NoSQL-based backend for games on Google App Engine and GCP
- Designed custom OAuth wallet for wearable devices for performing secure, distributed authentication of systems across multiple wearable and mobile devices for single cloud identity on games
- Coordinated multiple backend facilities for several teams participating in the IdeaBoost/MindPirate production lab, including tools for OAuth services, integration with MyGlass via code-generation-based pairing, client-triggered Mirror API notifications via distributed services
- Learned and educated team on MyGlass devkit, including Mirror API and custom local intents with remote timeline cards
Electrotank, Inc.
Virtual
Director of Platform Engineering
11.2011 - 04.2013
Senior Programmer
06.2010 - 11.2011
Role: Lead engineer and architect for Electrotank's main commercial products, ElectroServer and the Electrotank Universe Platform (EUP), leading a team of six platform engineers distributed across the country. Also served as primary developer on many of the features implemented for the platforms
- ElectroServer and EUP spanned roughly 1.2 million LoC
- Licensed by hundreds of active clients
- ElectroServer was tested to 330,000 concurrent users on a single node simulating “real world” load for chat and movement-heavy game models
- EUP deployments spanned 30+ concurrent stateful simulation servers
Key Details:
- Designed distributed EUP model with multi-region simulation and stateful server world transition model, and coordinate-space based balancing
- Optimized game server to 330,000 single server user load test by profiling, removing high-contention algorithms, reducing locking, and building NUMA-based cache coherence improvements
- Implemented multi-database support for stateful game simulation tracking including: MySQL, Cassandra, Versant object DB, Hazelcast in-memory write-through caching and pub/sub notification system
- Built REST-based Payment Processor for game microtransactions supporting credit cards, Facebook credits, Play Store, and iOS App Store
- Significant game server I/O Optimization Efforts: transitioned from custom in-house TCP/UDP stack to observable Netty-based pipelines
- Transitioned from bespoke POJO-based binary protocol solution with build-time and runtime components to a unified build-time generator with significant performance improvements, network-use improvements, reduced complexity, and improved debuggability
- Introduced one-click build automation for all tech stacks
- Developed C# and Java clients for EUP. Most active EUP licensees utilized C# and Unity3D, making this financially critical
- Built burstable, rate-limited pipeline and load-shedding system for in-house Blender-based sprite sheet generator
- Presented at Q-Con New York 2012, and GDC Austin 2012 on what it takes to successfully make big MMO games with lots of data and write-intensive game logic
Additional Roles & Experience
Kansas City
Technical Team Lead
02.2007 - 06.2010
Contributing Editor
2006 - 2009
Software Developer / Consultant
05.2000 - 02.2007
Role: Prior to 2010, I worked at a variety of companies in the Kansas City area as both a consultant and as an employee. I also did a variety of editorial contributions for technical sites such as Javalobby, DZone, and InfoQ. Additional specific details available on request
Key Details:
- From 2007 to 2010 I was a technical lead of a team of 6 engineers at the NAIC for their predominant rate and form filing applications
- From 2000 to 2007 I worked as a consultant for companies like Sprint and the NAIC, and also did a variety of training sessions for a variety of businesses in the Kansas City market
- Throughout this time I wrote a large number of articles for online communities both in paid freelance as well as gratis roles