A non-exhaustive list of my work.

Swarthmore College Computer Society

I’m co-president of the Swarthmore College Computer Society (SCCS), a 30-year-old student-run organization that provides a variety of services for the Swarthmore College community. SCCS provides a student directory, classifieds, a course planner, and more, as well as a media lounge and gaming pit for student use. I have a key role in day-to-day club operations including recruitment, management, and communications, in addition to low-level maintenance and system administration of club infrastructure.

Columns for the Swarthmore Phoenix

Since fall 2020, I’ve been writing a mostly-biweekly column on technology concepts in Swarthmore College’s student newspaper, the Phoenix. Articles from that column are mirrored on this website.

Streem

Over the summer of 2020, I worked fully remotely at Streem as a software engineer intern. I researched dependencies and build processes for different libraries and software solutions under consideration and communicated my findings with various pieces of documentation and presentations. I also wrote various small applications, utilities, and proofs-of-concept.

FRC Team 1540

I spent four years on FIRST Robotics Competition Team 1540, the Flaming Chickens. In-season, I spent 35+ hours a week designing, building, programming, and testing 150-pound competitive robots.

Robot Code

I wrote significant portions of the onboard Java control code for the team’s 2018, 2019, and 2020 robots. Each robot codebase consisted of several thousand lines of code developed in a team of three to five students with little to no outside assistance. Especially as co-lead of the software department in 2020, I coordinated with many different stakeholders to balance software, mechanical, and electrical needs and ensure a highly effective robot. During my tenure as a member of software and design leadership, Team 1540 won several awards for software capability and robot quality. Robot code for the 2018, 2019, and 2020 robots is available on GitHub.

ROOSTER

Throughout my time on the team, I also built and maintained the Reusable Object-Oriented Systems, Templates, and Executables for Robots (ROOSTER), a common library of useful functions for team use. ROOSTER is well-documented, flexible, and easy to maintain, and made the development process much more ergonomic in stressful situations.

CLUCK

In the summer of 2018, to replace an old time-tracking system, I developed the Common Lab Use Clock Kit (CLUCK), a flexible time clock to track hours spent in the team’s robotics lab and upload them to a Google Sheets document. CLUCK is based on Kotlin and Spring Boot, with a MongoDB persistence layer. The backend and API is extremely well-documented and has had only a few hours of unplanned downtime in multiple years of service.

Design and Fabrication

I did significant CAD work on the team’s 2020 robot using Autodesk Fusion 360, and provided design and machining guidance to other members of the team. I also led an effort to revolutionize the team’s CAM workflows and CNC machining practices and increased throughput by 400%. I also instructed new team members in machine tool usage and shop safety.

Moby

I designed and built the software and systems architecture for Moby, an autonomous robotic brush mower. I used ROS and Python for its onboard control systems, based on a Raspberry Pi with the Navio2 hat.