I spent 2016-19 working in the Apple Special Projects Group as a sensor hardware integration engineer.
My team sat between the teams that delivered sensor modules and the teams that used them – at least a dozen teams spread around the organization.
As sensor experts, we helped set requirements for the sensor system (like performance, size, power use) and worked with the sensor module teams to meet those requirements.
We designed procedures to make sure the sensors met requirements (testing and performance characterization), and manufacturing processes to make the sensor system ready for delivery (calibration and subassembly builds).
My work was a grab bag of hardware and software tasks. I
- Implemented factory calibration procedures for novel depth sensors
- Wrote software tools for interfacing with depth sensors which were widely used throughout the hardware organization
- Wrote software and automated hardware to achieve microsecond-precision timing characterization
- Designed circuit boards for calibration stations and sensor subassemblies
Between then and April 2021, I built the software stack from the ground up for Perceptive Sensing, a small startup in the autonomous vehicle space.
My team of eight (the entire company) was building a novel autonomous vehicle sensor solution from scratch. They still are.
My work was to build out all the software tools required by our system. I wrote the full stack, from binary data parsing to dynamic coloring for visualizers displaying millions of 3D points. I chose ROS as the defining framework.
I graduated with a BSECE from Olin College in 2016.
While I was there, I designed and taught a course on web development, served as a teaching assistant for five other engineering courses, and taught a mini course on electrical engineering concepts.
I joined a student teaching team to give the second offering of Olin.js, a semester long for-credit course on full stack web development (in node.js). We created all the course materials and ran everything – we gave lectures, graded assignments, held office hours, etc.
Over my time at Olin College I served as a “NINJA” (Need Information Now? Just Ask! – Olin’s term for course assistants) for introductory electrical engineering courses:
- Modeling and Control - circuits
- Real World Measurements - circuits for sensors
- Introduction to Sensors, Instrumentation, and Measurement
and more advanced courses:
- Principles of Engineering – mechatronic systems design and integration
- Controls – dynamic feedback control theory
As a NINJA I graded assignments, held office hours (which were generally well attended at Olin), and gave the occasional lecture. When class time was devoted to open work time, I was often available to answer questions. Olin has no graduate students, so NINJAs work closely with professors to ensure students have the resources they need to succeed.
During my senior year, I wanted to transfer some of the electrical engineering knowledge and practices I had gained from my time as a course assistant and in industry.
I led a small course attended by first- and second-year students covering best practices for solderless breadboards, lab equipment use (oscilloscopes and signal generators), op-amp circuits, and transistor basics.
Some of the course materials are still hosted here.
My teams designed an integrated circuit with our faces on it, built a real arcade game cabinet based on a smartphone game about yelling, and designed and built a prototype power outlet faceplate that monitors electricity usage [US10627253B2].
For a mixed analog/digital integrated circuit design (MADVLSI) class final project, my team of three designed a 2-channel (stereo) audio amplifier with gain tunable via SPI. We all collaborated on the design, and I completed schematic capture and layout for the digital circuit.
Integrated circuit design takes place below the transistor level. Transistors are created out of overlapping metal and semiconductor layers which are deposited onto Silicon wafers and etched to form patterns. We specified the dimensions of each transistor according to its function: digital (low power) transistors were small, film (high power) transistors were large and wide.
Through a MOSIS program, we had our design fabricated, and what’s shown here is a picture of the real die (about 1 mm square). Since our design only took up about a quarter of the die, we filled the empty space with pictures of ourselves.
For “Elecanisms” – an advanced mechatronics course – my team of five designed and built a penny arcade-style game cabinet inspired by the smartphone game Spaceteam. Our cabinet design included
- 3 player stations
- 12 dynamic LCD character displays
- Over 30 diverse actuators (buttons, switches, dials, etc.)
- An addressable RGB LED strip to display the players’ progress: a blue starship chased by a growing red wall of fire
We implemented all the game logic and peripheral interfaces in embedded C code that ran on four 16-bit PIC microcontrollers (PICs). One PIC held all game state and ran the game loop, and the other three each managed one of the three player stations. I designed a simple protocol (over SPI) that allowed the central PIC to send commands to the outer PICs (messages to display on the LCDs) and receive state from the outer PICs (which buttons have been pressed).
My Engineering Capstone project team was sponsored by Ivani, an IoT startup. Over the course of two semesters, we completed a full product cycle from market research to functional prototype build.
The product design we settled on was a power outlet faceplate with a wireless sensor for monitoring power use. The faceplate also leveraged Ivani’s Bluetooth wireless stack to monitor the presence of people in rooms, track assets, and communicate with other faceplates via a mesh network.
After we demoed our prototype to Ivani, they decided to work with us to bring the invention to patent. The patent (US10627253B2) reached utility in 2020.
Our custom printed circuit board (PCB) took AC power as input and converted it to 5V DC power. I designed and laid out the power and input protection circuits.
In 2015, I worked in the Apple Accessories group validating new silicon and product prototypes.
My team was the Apple accessories hardware group.
My work revolved around Silicon validation for the USB-C to Lightning Cable and Lightning to 3.5 mm Headphone Jack Adapter. I become intimately familiar with the Lightning system architecture and wrote embedded C (with mbed) and Python to automate validation tests. I also designed a circuit board for further validation test automation.
In 2014, I led an effort to bring a mechanical energy harvester from proof-of-concept to functioning prototype at FastCap Ultracapacitors.
My team designed hardware integrating the novel FastCap ultracapacitors into various application systems.
My work was primarily to improve on an existing design for a mechanical energy harvester. I hardened the prototype – selecting electrical components that would survive extreme shock, vibration, and temperature – and designed a custom printed circuit board (PCB, schematic + layout) that met the project’s tight space constraints. I also worked with mechanical engineers to optimize the enclosure size. Between performance improvements and size reductions, the functional prototype we delivered was 10x as energy dense as the proof-of-concept.
As an intern, I also took care of a lot of odd jobs. I
- Installed thermal test equipment and ran tests on other systems, collected and analyzed thermal data and presented results to the team
- Wrote lab equipment drivers to automate tests
- Designed a “breakout board” for our compact circuit boards to improve the test flow
In 2013, I built the Beta product for PlayPosit, a video-centric EdTech startup.
My team was a startup in an EdTech accelerator program – two cofounders, one engineer, and me. Our product was an E-Learning platform designed for the flipped classroom. The platform allowed teachers to turn an existing internet video into a lesson for their students by adding “checks for understanding” (multiple choice questions, short answers, etc.) that would pop up at times of their choosing as the video played.
My work was to build the product based on the founders’ vision and their Alpha version. I
- Worked with the founders to turn product requirements into a system design and ultimately a RESTful API architecture
- Built most of the backend – PHP and MySQL – including user auth and password reset
- Built the frontend with Backbone.js and CSS
We finished the Beta in time for the school year (and the end-of-accelerator demo), and PlayPosit continues on.
If you want to learn more, contact me here.