I’ve been working in the marine software space for years, and adding nautical charts to applications is a frequent requirement. “Nautical Charts” are maritime-specific maps that show, in great detail, the structure of the ocean environment, above and below water. Among other info, they show bathymetry contours, which help avoid boats running aground. They’re relied on by…
I am currently working as an Robotics Software Engineer at Anduril, building software for large underwater systems. About Anduril Anduril is not a traditional defense contractor. We are shaping the future of defense, transforming US & allied military capabilities with advanced technology. We emphasize speed and results and control our products from start to finish, including funding R&D to selling…
I worked as an Autonomy Software Engineer at Sea Machines, a leader in pioneering autonomous control and advanced perception systems for the maritime industry. What I Worked On Led development of all mission planning user interfaces for new Sea Machines products. Developed a technical architecture based on React.js, Node.js, PostgreSQL, and MQTT, and worked with other full-stack developers to…
I’m continually experimenting with autonomy for small vessels using ArduPilot and other open-source platforms. I’m particularly interested in mission planning and remote operation over long-range connections. To that end, I wanted to build a simple marine rover as a testbed for autonomy projects. My core requirements were: - A stable platform with sufficient flotation to support later,…
I’m currently working with Andrew Gutierrez on Brobot: An autonomous beer-pong opponent, built with ROS & RealSense. Brobot is an intelligent robot opponent that can play beer pong. It uses RealSense stereo vision to perceive the environment, senses targets, and accurately launches a ball using a set of dual brushless motors. Brobot started as a light-hearted question during the depths of…
In early 2021, I worked as a Software Engineer in R&D at 908 Devices. While at the company, I built software for 908 Devices’ line of portable, chemical analysis devices based on high-pressure mass spectrometry. What I Worked On Built a system to calibrate high-voltage AC waveform generation, improving accuracy of the mass spectrometry process. Implemented memory and architecture…
I recently took the Flying Car and Autonomous Flight Engineer Nanodegree, an intensive 4-month online course through Udacity that covers introductory flight software engineering and algorithms for aerial vehicles. I learned and implemented planning, controls, and estimation algorithms for flying vehicles. Through the project-based curriculum, I built a complete software stack for autonomous…
One feature that should be really simple on Spotify but doesn’t exist is the ability to play straight through an artist’s entire discography in chronological or reverse-chronological order. I took a weekend to create a tool called Timelineify that solves this problem by creating a Spotify playlist with all of an artist’s songs. Requirements Search any artist on Spotify and create…
Overview I built a small line follower robot to sharpen my ROS and OpenCV skills. The robot can detect and follow tape lines on my floor. It runs ROS on a Raspberry Pi, uses OpenCV to detect lines, and an Arduino Pro Micro to control differential steering. Architecture The robot uses a pipeline that takes in images from a Raspberry Pi camera, processes the image to produce a target speed and…
In Spring 2020, I collaborated with Ben Martell and Andrew Guterriez to design and fabricate a model International Space Station exhibit for MIT Space Week. In about a month, we planned and built a 6’ wingspan ISS model which visitors could walk around, under, and through. “Space Week” is a set of events designed to inspire the next generation of engineers and explorers through…
TelemetryJet is a WIP tool for organizing, analyzing, and sharing telemetry data from hardware systems. The browser-based tool makes it easy to load data or stream live, build charts and visualizations, and share datasets and dashboards with others. I’ve been working on TelemetryJet on and off since graduating from UR. While working on the Rochester Solar Boat, I noticed a common frustration…
I worked at Convene as a Software Engineer from September 2019 to March 2021. I worked on a range of full-stack projects supporting Convene’s hybrid workplace, meetings and events offerings. What I Worked On Led the architecture and implementation of Convene’s data analytics processing pipeline in Node.js and Postgres, ingesting millions of time-series data points per hour to analyze…
I’ve been building and flying RC aircraft for several years. It’s a great activity, offering a chance to get outdoors and the excitement of flying something you’ve built yourself. Flying RC aircraft challenges your problem-solving skills as you work to get a plane in the air, push the boundary of your flying skills, and inevitably perform impromptu repairs to fix the plane after…
I’ve always been fascinated by arcade machines, in particular their user interface design. Arcades bombard the player with a rich multi-sensory experience in an attempt to compete for attention in a noisy and distracting environment. The most successful arcade games have extremely satisfying interaction methods: The games “feel” good to play, on the lowest level of the tactile…
I spent four years as a team lead of the University of Rochester Solar Boat team. The team designs, builds, and races a manned solar/electric boat in the Solar Splash competition. Solar Splash is a dynamic, multi-race competition that challenges students to push the boundaries of electric vehicles in endurance, top speed, and maneuverability events. During my time on the team, I led a data-driven…
I graduated from the University of Rochester in 2019 with a B.S. in Computer Science. During my time at Rochester, I balanced an interdisciplinary mix of academics, athletics, and extracurriculars: I ran on the Track and Cross Country teams as a middle distance runner. I primarily ran the 800m, with a PR of 1:53.65. I was also one of the legs of Rochester’s 4x400m team, which competed at…
I interned with Amazon in Seattle as a Software Development Intern in the summer of 2018. I worked on the Maps Services team, which owns the real time navigation infrastructure used to support last-mile delivery drivers. What I Worked On I worked on a project to automate a critical data conversion process for map data. This project helps ensure map data is updated quickly, providing accurate,…
Overview This clock was a weekend project to build a dynamic piece of functional wall art. The clock uses a matrix of letters with hidden words to display the time. Rather than spelling out all numbers, the clock uses phrases such as “half past five” or “quarter to ten” to indicate the time. Components I bought a cheap picture frame to use as an enclosure. The letters were…