Intro
I am a professional software engineer, musician, and teacher. I do full-stack work at my current company, focused on building internal tools, connecting our systems with various financial partners, and building out technical support for new product initiatives.
My interest in computer science and software development is fueled by my desire to create tools that make life more convenient and more efficient for people. As soon as I started learning to program, I began equipping myself with the knowledge I needed to build digital tools. Most of my personal projects, current and upcoming, center around this idea.
In software development, I've had a lot of experience building new systems from scratch, often for the purposes of automating and streamlining outdated and manual workflows. I've experienced both greenfield development where I was responsible for designing and building technology support for a well-defined but new product, and also legacy support and enhancements to a very mature product and architecture. Most of my current projects are proprietary, but a few are listed on my GitHub.
I am also a lifelong musician. I began playing drum set at 9 years old, and I currently play percussion, drum set, piano, guitar, bass guitar, and tuba. I graduated from the Wheaton College Conservatory of Music, and I currently teach drum set part-time. I actively perform on drum set, percussion, and bass guitar; contact me for gigs here.
About
View resume
I have had a keen interest in technology since middle school. I started experimenting with audio production and video editing in sixth grade. I took a web design class in high school, as well as introductory programming course (mostly in Scratch).
During my freshman year of high school, I taught myself how to program in Casio BASIC to create calculator programs that would enable me to (legally) fly through math portions of standardized tests. I also created a couple websites focused on design and user experience. At this point, I did not have significant knowledge in programming – I had briefly touched HTML but most of my previous projects had used Casio BASIC, Weebly, Scratch, and other simple tools.
I started seriously programming during my sophomore year of college, when I learned my first object-oriented language, Java. Although the learning curve was steep, I thoroughly enjoyed the challenge of learning to program, and I thrived in the creative freedom my school projects allowed me. At Wheaton, most of my coursework was in Java and C. Along the way, I explored Python, JavaScript, HTML, CSS, and SML (a functional programming language) – all of these were related to the curriculum or school projects.
My interest in full stack software development has been cultivated both in my professional experience and by my academic background. For a software development project, my team and I all taught ourselves the basic web development stack – HTML, CSS, and JavaScript. I came up with an idea to build a touch-typing website for coding professionals, and during the course of the semester we learned the necessary tools and built out the website, ProGrammar. One of my college internships was in back-end development, and it introduced a new set of problems and practices that were very interesting to learn about and solve.
In my full-time role, I've been able to learn new programming languages and frameworks, understand and apply business principles firsthand, and study well-designed software architecture. One of the things I value most in my work is the constant opportunity to learn and apply new concepts in real-world systems. I enjoy creating digital tools to give people capacity, convenience, and efficiency through digital tools, and I continue to anticipate discovering new ways to do so in software engineering and tech.
projects
Here is an overview of some of my previous projects:
- Trade Execution Platform (2025). A fully-featured portfolio management system and trade execution platform for equity, option, and mutual fund trades. Includes a manual file system to handle brokers that utilize spreadsheet-based trade workflows. Tools: Delphi, SQL Server, Prisma ORM, External APIs
- Portfolio Data Integration (2024). A complex system to automate investment account data syncing between internal platforms and external financial providers. Includes a highly scalable back-end that aggregates registered investment advisors' client account data from multiple custodians. The front-end provides real-time data status updates. Tools: OpenAPI, REST, Prisma ORM, React, TypeScript, Delphi
- ORG Reimbursements Automation (2024). An end-to-end system for tracking and reconciling organizational fee reimbursements across multiple trusts. The custom UI includes visual indicators and approval workflows for users. Replaces a spreadsheet-based workflow, automating much of the auditing process while also providing increased override capabilities and more robust handling of edge cases. Tools: Delphi, SQL Server
- ProGrammar (2022). A touch-typing web application intended for coding students or professionals to develop their speed and accuracy. A group project, presented to the class and featured in STEM day at Wheaton. Tools: JavaScript, CSS, HTML, Firebase, Node, Webpack. Link to source code
- TGTOHoldingsApp (2022). A project from a summer internship. A distributed three-tiered desktop application to view and manipulate Target Outcome ETF holdings at First Trust. Tools: SQL Server, Delphi (Object Pascal), multiple in-house frameworks and languages.
- Database Client (2022). A CRUD web database client to view and manipulate data in a MySQL database. Tools: HTML, CSS, JavaScript, Node.js, npm (http, mysql2, url). Link to source code
- Extendible Hashing Simulator (2022). Implementing extendible hashing, a technique for dynamic file expansion. Tools: Java. Link to source code
- Graphing calculator (2020). A graphing calculator that parses input and renders graphs of different types. Some example functions are provided; zoom and pan are implemented. Tools: Java. Link to source code
- ATM (2020). A basic ATM simulator - will accept/dispense $5 and $20 dollar bills and print a receipt summary. Tools: Java. Link to source code
Education
Bachelor of Music with Elective Studies in Computer Science,
Wheaton College, Wheaton, Il
My original plan was to dual major in computer science and music. For scholarship/financial reasons, I opted for a B.M. instead. My computer science course plan remained unchanged.
Relevant Computer Science and Math Coursework
- CSCI 335 - Software Development
- CSCI 345 - Data Structures & Algorithms
- CSCI 371 - Database Systems
- CSCI 243 - Discrete Mathematics and Functional Programming
- CSCI 351 - Intro to Computer Systems
- CSCI 445 - Analysis of Algorithms
- MATH 245 - Linear Algebra
- CSCI 245 - Programming II: Object-Oriented Design
- CSCI 235 - Programming I: Problem Solving
- MATH 232 - Calculus II
- MATH 2X3 - Vector Calculus
- MATH 231 - Calculus I
Awards and honors
Contact
Elements
Text
This is bold and this is strong. This is italic and this is emphasized.
This is superscript text and this is subscript text.
This is underlined and this is code: for (;;) { ... }
. Finally, this is a link.
Heading Level 2
Heading Level 3
Heading Level 4
Heading Level 5
Heading Level 6
Blockquote
Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem ipsum dolor sit amet nullam adipiscing eu felis.
Preformatted
i = 0;
while (!deck.isInOrder()) {
print 'Iteration ' + i;
deck.shuffle();
i++;
}
print 'It took ' + i + ' iterations to sort the deck.';
Lists
Unordered
- Dolor pulvinar etiam.
- Sagittis adipiscing.
- Felis enim feugiat.
Alternate
- Dolor pulvinar etiam.
- Sagittis adipiscing.
- Felis enim feugiat.
Ordered
- Dolor pulvinar etiam.
- Etiam vel felis viverra.
- Felis enim feugiat.
- Dolor pulvinar etiam.
- Etiam vel felis lorem.
- Felis enim et feugiat.
Icons
Actions
Table
Default
Name |
Description |
Price |
Item One |
Ante turpis integer aliquet porttitor. |
29.99 |
Item Two |
Vis ac commodo adipiscing arcu aliquet. |
19.99 |
Item Three |
Morbi faucibus arcu accumsan lorem. |
29.99 |
Item Four |
Vitae integer tempus condimentum. |
19.99 |
Item Five |
Ante turpis integer aliquet porttitor. |
29.99 |
|
100.00 |
Alternate
Name |
Description |
Price |
Item One |
Ante turpis integer aliquet porttitor. |
29.99 |
Item Two |
Vis ac commodo adipiscing arcu aliquet. |
19.99 |
Item Three |
Morbi faucibus arcu accumsan lorem. |
29.99 |
Item Four |
Vitae integer tempus condimentum. |
19.99 |
Item Five |
Ante turpis integer aliquet porttitor. |
29.99 |
|
100.00 |