Resume

Kyle Schattler
https://kyleschattler.com
https://github.com/kschat
kyleschattler[at]gmail[dot]com

Education

Pennsylvania College of Technology
B.S. in Web and Application Development, May 2013

Professional Experience

Walmart Labs: Principal Software Engineer
August 2015 - Present, Philadelphia PA (Remote)

  • Engineer lead for various customer facing products including Sam's Scan and Go, Walmart Scan and Go, Savings Catcher rewrite, and Walmart Pay
  • As engineer lead I was responsible for working with product to gather requirements, designing and architecting new features, and prioritizing work
  • Wrote and maintained GraphQL and RESTful web services using Node.js and TypeScript
  • Helped with growing the organization by interviewing candidates, participating in hiring panels, and mentoring junior engineers
  • Led adoption of TypeScript at Walmart by leading the TypeScript Special Interest Group and hosting weekly meetings
  • Planned and help execute the successful migration of a 17K LoC web service from JavaScript to TypeScript without downtime, regressions, or interruptions to shipping new features
  • Led the Walmart Pay team in writing our first web service using Rust and actix-web

Branding Brand: Senior Frontend Developer
October 2014 - August 2015, Pittsburgh PA

  • Worked on various client mobile websites using jQuery, Ember, Handlebars, Node, and Express
  • Wrote RESTful APIs that used the clients desktop sites as their datasource using Node and Express

UPMC: Intermediate Software Engineer
June 2013 - October 2014, Pittsburgh PA

  • Built single-page app in JavaScript using self developed framework that allowed radiologist to upload external DICOM images into UPMC’s system
  • Developed web portal to manage images uploaded from external sites in .NET MVC 3
  • Developed RESTful API to integrate with DICOM uploading single-page app in .NET WebAPI
  • Wrote micro-services to process uploaded DICOM images in C#

Projects

Snake
github.com/kschat/snake

  • Wrote a Snake clone for terminal emulators using Rust. Used crossterm for cross-platform terminal emulator support, and developed a very basic engine/game-loop that supports targeting a specific framerate, registering and loading scenes, processing input, and buffering draw calls.

Baby Announcement
github.com/kschat/baby-announcement

  • A baby announcement disguised as a fun quiz game. Users can create and join quiz sessions where they'll be asked the same question on their phones, waiting for everyone to answer before moving on. Once the last question is answered by all players, the baby announcement is displayed and a ham horn is played. The web app also uses the front facing camera to record everyone's reaction to the news, which can then be downloaded. I used TypeScript for the client and the server.

Trampoline TS
github.com/kschat/trampoline-ts

  • A small package I wrote because I needed to emulate tail-call optimizations and none of the existing packages were type safe. The package has 100% code coverage (including tests for the more complicated types), and uses semantic-release to automate the build process.

Technical Skills

TypeScript/JavaScript Rust C#
Kotlin Bash/Zsh Lua
MySQL MSSQL MongoDB
Cassandra Kafka ZooKeeper
Docker K8s Linux (Debian based, and Arch)
Solaris (SmartOS) Scrum & Agile Version Control
CI/CD Automated testing Vim/Neovim