Casey Fronk
Senior Software Engineer
Salt Lake City, Utah

About me
I am a full-stack software engineer with 7 years of experience building React, TypeScript, and Node.js applications. I started my journey at Dev Mountain in 2017, and I have since built several projects with Next.js, TailwindCSS, tRPC, PostgreSQL, and SQLite, to name a few.
In my current role, I lead a team of three developers for Wyssling Consulting, an engineering firm in the solar industry. We've built a ground-up CRM for managing solar projects for over 300 clients. Throughout the development of this project, I have demonstrated confident leadership skills by coordinating cross-functional teams, setting clear objectives, and ensuring timely deliverables. Additionally, I have showcased adaptability by quickly integrating client feedback, pivoting strategies based on new insights, and implementing emerging technologies to enhance project outcomes. I have designed a custom authentication system using JSON web tokens, a photo/file upload system that has processed over 2 million uploads, and everything in between.
Previously I worked as a software engineer for a breathalyzer company, SkyFine USA. We built a web and mobile platform using React and React Native. The mobile app was used by technicians to configure Bluetooth-enabled Ignition Interlock Devices (IID), and end-users to manage their accounts and process payments.
Before that, I was a network administrator at Younique. I played a key role in managing the company's network infrastructure, ensuring seamless connectivity and system performance for over 700 employees. My experience at Younique allowed me to develop strong problem-solving skills and a deep understanding of enterprise IT support and infrastructure management.
Experience
Senior Software Engineer
Wyssling Consulting • 2021 – Present
- Led the development of a React, Node, and PostgreSQL CRM platform for managing solar projects for over 300 clients, replacing a costly ($8,000/mo) RDP server and improving productivity, accuracy, and client-satisfaction.
- Built an API for clients to automate project submission and drastically reduce turnaround times.
- Developed an invoice system that aggregates project details and services rendered, and generates a PDF.
- Collaborated with structural and electrical engineers to build a queue system for seamless internal project review and hand-off.
- Led a team of 3. Conducting code reviews, teaching scalable design patterns, and collaborative feature planning.
- Configured automated deployments via AWS using Github, Elastic Beanstalk, EC2, and CodePipeline.
Frontend Engineer (React)
SkyFine USA • 2020 – 2021
- Migrated an existing PHP service to React, React Native, and Kotlin.
- Built an intuitive mobile app for technicians to install wireless Ignition Interlock Devices (IID) and configure them via Bluetooth.
- Designed a React dashboard for reviewing BAC, photo, and location data captured by GPS-enabled Ignition Interlock Devices (IID).
- Built a React Native enrollment process for end-users to provide photos of their driver's license and all court-ordered identification details.
Network Administrator
Younique • 2014 – 2018
- Managed local network infrastructure. Configured routers, switches, firewalls, VLANs, and a dual-ISP failover.
- Ran Cat-5 cables between server rooms, floors, and cubicles in a 5-story building and adjacent warehouse.
- Troubleshooting and IT help-desk for over 700 employees.
- IT Onboarding, user-provisioning, and hardware configuration.
My stack

TypeScript
I utilize TypeScript, advanced types, generics, and modern ES6+ features to make full-stack applications with end to end type safety. TypeScript allows you to define what is and is not allowed up front. This eliminates an entire class of bugs, allowing you to focus on shipping products.

React
React is a great tool for building elegant and intuitive interfaces using Vite and Next.js. I build custom hooks and context providers to reuse logic and define predictable behavior.

Tailwind CSS
I use Tailwind CSS to craft stunning and responsive interfaces with utility-first classes that enable rapid development, consistent styling, and seamless adaptability across devices, all while keeping my codebase clean and maintainable.

Node.js
Node.js is a great choice for building scalable and highly-performant APIs with TypeScript, leveraging its non-blocking event-driven architecture to handle concurrent requests efficiently.

Express.js
A staple in the Node ecosystem for building REST APIs with a flexible routing system, middleware support, and seamless integration with databases and authentication.

Next.js
My go-to for building serverless applications. Next.js is an opinionated framework for building full-stack React apps with server-side rendering, static site generations, and a simple file-based routing system. Next.js applications can be deployed seamlessly on Vercel in minutes, allowing you to focus on your product.

Amazon Web Services
I have deployed multiple products leveraging AWS services, including Elastic Beanstalk, S3, RDS, Lambda, and CodePipeline. AWS enables scalable infrastructure that dynamically adjusts to spikes in usage while maintaining cost efficiency. By utilizing these services, I can ensure high availability and performance without the overhead of managing physical hardware.

PostgreSQL
I use PostgreSQL as a robust and scalable relational database, leveraging its powerful querying capabilities, ACID compliance, and support for advanced features like JSONB, indexing, and transactions to ensure data integrity and performance in my applications.

Drizzle ORM
I use Drizzle ORM to interact with my PostgreSQL database in a type-safe and efficient manner, leveraging its lightweight, SQL-first approach with prepared statements, schema inference, and seamless TypeScript integration for a reliable and maintainable data layer.

Rust
I started learning Rust in 2023 to branch out from being a TypeScript-only developer, and have since created a few games using Bevy, and web servers using Axum and Actix. Rust has a powerful type system and ownership model that allows you to build highly-performant and memory-safe applications. Rust is being adopted in many industries, and I plan to continue learning.