About
"Whatever you do, work heartily, as for the Lord and not for men." - The Apostle Paul, to the Church at Colossae
I am a software engineer living and working in Massachusetts. I work extensively in Universal JavaScript and HTML5 and have experience in many other technologies. Take a look at my GitHub to see my personal projects.
I also enjoy music, have been known to play drums and bass guitar, and enjoy solving Rubik's cubes of all sizes! Feel free to take a look around and contact me with any questions!
Résumé
Languages
- Proficient in: JavaScript (Universal Node / Browser, TypeScript, React), HTML5, CSS3 (SCSS)
- Familiar with: Rust, Ruby, C# and .NET Framework, Java, Kotlin, Swift, SQL
Software
- Database: PostgreSQL, MySQL, SQL Server, SQLite/SQLCipher, MongoDB, Redis
- Server: nginx, Apache httpd
- Tools: Docker, Git, Jenkins, Travis CI
- Platforms: macOS, Linux / Unix, Microsoft Windows
Experience
Hummingbird · Senior Software Engineer · Remote
August 2020 - Present
- Worked with React, Apollo, TypeScript, GraphQL, PostgreSQL, Ruby on Rails, and Sidekiq.
- Worked extensively with ElasticSearch.
- Implemented an automations platform trigger editor with React Hook Form capable of editing deeply-nested data structures.
- Implemented a Liquid template / Markdown template editor with combined syntax highlighting and autocomplete.
- Prototyped AI/LLM Q&A in Rust using OpenAI Embeddings and an HNSW index.
- Managed AWS infrastructure across multiple environments using Terraform.
- Worked with systems designed to protect PII.
- Migrated frontend build from Webpack to Vite.
- Improved developer productivity with Nix, Navi, and direnv.
Signal Messenger · Desktop Developer · Remote
April 2019 - June 2020
- Worked with React, Redux, Electron, and TypeScript with legacy and modern features.
- Worked with SQLite, SQLCipher, and Protobufs.
- Worked with and designed for systems involving distributed state.
- Implemented features with keyboard accessibility in mind.
- Progressively ported features from Backbone and JavaScript to React/Redux and TypeScript.
- Implemented virtualized, fuzzy-searchable emoji picker and inline emoji typeahead with fuzzy search.
- Implemented sticker creator for Signal Desktop utilizing native libraries for conversion and encryption.
- Implemented protocols with low-level encryption primitives.
- Refactored the application to support different addressing schemes.
- Worked extensively in open source and worked directly with our users.
SHIFT Media · Front End Lead · Boston, MA
September 2017 - April 2019
- Worked with React, Redux, Electron, and modern JavaScript (TypeScript, Flow, JSX).
- Designed and implemented WebSocket communication layer with sagas.
- Designed and implemented generic upload queueing system with sagas.
- Designed and implemented SVG-based annotation tools.
- Designed and implemented cross-window Redux store sync for Electron.
- Designed and implemented complex, application-wide drag and drop functionality.
- Mentored junior engineers and presented multiple talks about advanced concepts in JavaScript and React/Redux.
- Hired as Senior Software Engineer. Promoted to Lead Software Engineer in March 2018.
Candescent Health · Software Engineer · Remote (Waltham, MA)
April 2016 - August 2017
- Worked with React, Redux, Vue, Angular, Node, PHP, MySQL, and Docker.
- Used Flyway for database migrations across multiple client environments.
- Designed and created a dashboard for monitoring doctors and their workloads across multiple facilities.
- Prototyped Electron applications with native integrations.
- Open-sourced a Babel plugin for automatic dependency injection in Angular.
- Presented multiple tech talks on modern JavaScript and CSS best practices.
IBM · Staff Software Engineer · Littleton, MA
January 2013 - April 2016
- Worked with React, Redux, Dojo, and OpenSocial, continually integrating bleeding-edge web technologies.
- Focused on modular, high-performance code capable of running in varying environments with varying content security policies.
- Developed front-end request layer mimicking Dojo’s request API providing automatic reauthentication with no changes required to client code.
- Automated builds and deployments with Jenkins.
- Conducted technical interviews for intern and new hire candidates.
- Contributed Less Compilation to OpenNTF JavaScript Aggregator.
- Prototyped PostCSS / AutoPrefixer support for OpenNTF JavaScript Aggregator.
- Created a mock browser environment for load testing Verse’s offline capabilities.
- Created shim for testing New Relic Synthetics offline.
IBM · Smarter Cities Technical Coop · Remote (Raleigh, NC)
August 2012 - November 2012
- Worked with the Dojo Toolkit, OpenStreetMap, and OpenLayers.
- Developed a prototype for an IBM Smarter Cities data visualization product.
IBM · Extreme Blue Innovation Lab Technical Intern · Austin, TX
May 2012 - August 2012
- Led a team of software developers and business people to create a mobile application development solution targeted at non-technical users.
- Worked with an agile scrum process using Rational Team Concert to manage tasks.
- Worked with several technologies including Java, JavaScript, and HTML5.
- Project features an intuitive drag and drop interface which allows non-technical users to create their own applications out of functional building blocks.
- Presented technical project details to multiple IBM executives.
Big Y Foods, Inc · Technology Administrator / Systems Development · Springfield, MA
January 2010 - May 2012
- Worked with ASP.NET MVC (C#) and Microsoft SQL Server.
- Created stored procedures for Microsoft SQL Server to generate reports on various data collected from stores.
- Created an internal web application to help corporate employees better manage their daily tasks. Application features on-call phone listing and a time-off request form where corporate employees could find coverage if they needed time off.
Personal Projects · github.com/knpwrs · knpw.rs
- My personal GitHub profile contains personal projects and contributions to various open source projects. Notable open-source contributions include the MongoDB NodeJS Driver, immer, JSDom, and the Frontend Maven Plugin.
- instant.bible is a Bible search engine which delivers results instantly as you type. The engine is written in Rust and has native clients written in Swift (FFI), Kotlin (JNI), and TypeScript/React (WASM).
- Cursor Dance Party is a tech demo of WebSockets and HTML5 Canvas. Users see the cursors of all other connected users as they move around. Survived the front page of reddit.
Volunteer Work
Let's Church · Founder and Principal Engineer · lets.church
January 2023 - Present
- Incorporated a 501(c)(3) non-profit dedicated to providing free technology resources to churches and Christian ministries.
- Implemented video processing on cloud servers and on bare metal in multiple data centers to transcribe and transcode videos.
- Implemented transcript search with ElasticSearch.
- Implemented website with Astro, SolidJS, Prisma, and Pothos.
ExcelChurch · Technical Director · Leominster, MA
February 2014 - July 2019
- Designed and implemented live production setup using ProPresenter, Reaper, Lightkey, Wirecast, and dedicated production hardware.
- Designed and implemented an RTMP streaming relay in the cloud with Docker, Nginx, and Stunnel.
- Set up electronic drums to trigger sounds with Superior Drummer and set up external MIDI controller running through the drums to control click tracks, backing tracks, lights, projection, and recording.
- Performed weekly setup and teardown of professional A/V equipment including sound, recording, video, live streaming, and projection.
- Provided hands-on training, recorded instructional videos, and wrote documentation for other volunteers.
- See full setup diagram.
Education
University of Massachusetts Amherst · Amherst, MA · 3.7 GPA
2011 - 2013
- Received Bachelor’s of Science in Computer Science.
- Received two awards for outstanding performance in individual classes.
- Made the Dean’s List three out of four semesters.
Springfield Technical Community College · Springfield, MA · 3.8 GPA
2009 - 2011
- Received Associate’s of Science in Engineering and Science Transfer (Focus on Computer Science).
- Received two annual awards for outstanding overall performance.
- Completed two directed studies (one in Computer Science and one in Math).
- Made the Dean’s List all four semesters.