Lead Software Engineer
2022 - 2022Skillz- Created and implemented a YouTube-like web streaming media player for the Skillz Cloud Gaming platform.
- Developed a WebSockets-based channel with bidirectional and real-time communication between emulated, cloud-based games and the web streaming client.
- Designed and led the team in implementing the cloud gaming Akamai content delivery network (CDN) and the origin domain name system (DNS) strategy.
- Implemented cloud-specific game SDK features in React Native, Java, and Kotlin.
- Built and deployed microservices using Go, Kubernetes, and Terraform.
Technologies: Next.js, Go, Kubernetes, Android, Kotlin, Java, WebSockets, WebRTC, Terraform, APIs, Docker, Content Delivery Networks (CDN), Content Management Systems (CMS)Principal Software Engineer
2019 - 2021Nike- Used inner source, volunteer-based model to build a Next.js web platform for nike.com. In 13 months, the project reached 40+ contributors, 300+ pull requests, and four apps in production. Today the framework is used for nearly all Nike website pages.
- Created common CI/CD pipeline to align infrastructure and DevOps for 20+ nike.com experience applications. Reduced deployment times by 50-90% and increased deployment cadence by 20-200% per team.
- Designed features for privacy, global navigation, auth, bot mitigation, analytics, optimization, and personalization on nike.com eCommerce pages.
- Introduced a Vercel-like preview feature to allow developers to deploy in-progress work for feedback.
- Volunteered as a speaker in multiple engineering forums with audiences ranging from 300 to 500 attendees.
- Organized cross-team DevOps and Accessibility working groups to establish best practices for Nike consumer web applications.
Technologies: TypeScript, React, Akamai, Amazon EC2, AWS Fargate, Next.js, Jenkins Pipeline, JavaScript, Node.js, APIs, Docker, Content Delivery Networks (CDN)Lead Software Engineer
2018 - 2019Nike- Developed a high-traffic product details page on nike.com using Node.js, AWS, and React.
- Expanded operational support capabilities, implementing distributed tracing, Splunk dashboards, New Relic Synthetics, enhanced logging, and more.
- Optimized server-side concerns, including localization, redirects, and data-fetching.
- Participated in cross-team and cross-vendor architectural discussions to break down and estimate complex features.
- Managed infrastructure and DevOps for cloud applications using EC2, IAM, S3, and CloudFormation.
Technologies: Node.js, JavaScript, Redux, React, Amazon EC2, Amazon Virtual Private Cloud (VPC), Puppeteer, AWS CloudFormation, Jenkins Pipeline, Amazon S3 (AWS S3), APIs, Docker, Content Delivery Networks (CDN)Senior Software Engineer
2016 - 2018Nike- Enhanced features and platform for existing in-store touchscreen applications, including client-certificate auth, foundational desktop and web apps architecture, REST microservice development and integration, and internationalization.
- Scaled and stabilized the Trial Zone, an interactive retail experience in flagship Nike stores. Worked across multiple technologies, including Unity 3D, Microsoft Kinect, Java, iOS, OpenGL, and AWS.
- Fixed features in the iOS application used for retail and web bra fitting charts.
- Wrote the integration layer for an Electron-based multi-application framework used on retail touchscreens.
- Developed and deployed a store content update microservice using Spring Boot, AWS, EC2, and Jenkins.
Technologies: Unity3D, Microsoft Kinect, Java, iOS, OpenGL, Amazon Web Services (AWS), Spring Boot, React, Node.js, APIs, DockerSoftware Engineer
2014 - 2016NAVEX Global- Developed features for a flagship incident management project using SQL Server and ASP.NET MVC.
- Assisted in the evolution of an in-house UI framework. Tools and task authoring were orchestrated using Gulp to support rapid feedback and TDD-style development.
- Implemented a shared library for user-defined forms, applied to three existing products.
- Automated a new deployment environment provisioning using Windows Desired State Configuration (DSC), reducing set up time from 2-3 days to around two hours.
- Created policy-management and survey-product features using ASP.NET MVC, RavenDB, CoffeeScript, and SQL Server.
Technologies: C#, .NET 4, RavenDB, IIS, CoffeeScript, React, Ruby, Sass, ASP.NET, APIsSoftware Developer
2012 - 2014Viewpost- Coordinated and led the internal web applications development.
- Developed features for a B2B invoicing platform using C#, ASP.NET MVC, SQL Server, KnockoutJS, and SASS.
- Built a prototype automated UI testing framework using Selenium.
- Removed several shims and refactored HTML, CSS, and JavaScript to provide full cross-browser compatibility.
- Provided SVG-based data visualizations for cash flow management using D3.js.
Technologies: .NET, JavaScript, Sass, HTML5, C#, ASP.NET, ASPSoftware Engineer II
2010 - 2012Advanced Distributed Learning Initiative- Developed a WordPress-based architecture for the adlnet.gov site and other internal and external web apps.
- Promoted open-source development processes and assisted in the management of the organization's GitHub account.
- Provided supporting client libraries and applications to interface with Learning Registry web services.
- Contributed to a web-based 3D repository application to upload and store models used for military simulations and serious games.
- Set up infrastructure and hosting for an OpenSimulator instance used for e-learning studies, including the Wounded Warriors Project.
Technologies: C#, Python, Java, Unity3D, MySQL, CouchDB, WordPress, ASP.NET, ASP, Content Management Systems (CMS)Undergraduate Research Assistant
2007 - 2010University of Central Florida Institute for Simulation and Training- Designed the software update service for simulations and games, written in C++ and then ported to C# for long-term maintainability.
- Developed a first-person motion controller for the simulation used to train soldiers and defense personnel on Suspicious Activity Reporting at a lower cost than live exercises.
- Created and implemented a custom Drupal module for capturing, searching, and comparing commercial game engine data. This game engine data was used to assess the technology fit of implementing various simulations using each solution.
- Assisted in the development of serious game demos using Arma 2 and CryEngine.
- Built the internal hardware inventory management UI using jQuery and JavaScript, used by managers to keep track of laptops and other loaned assets.
Technologies: PHP, C++, C#, Drupal 7, JavaScript, Content Management Systems (CMS)