I'm a graduate from the Mechatronics Engineering program at the University of Waterloo with a passion for embedded systems and robotics. I have over 3 years of experience developing firmware for the automotive, medical, telecommunications, construction and aerospace industry. When I'm not busy writing code, you can find me playing piano, cooking, hiking or working out.
-
Member Of Technical StaffEtchedSan Jose, Ca, Us -
Firmware EngineerEtched Nov 2024Cupertino, Ca, Us -
Embedded Systems Firmware EngineerIndie Semiconductor Mar 2023 - Nov 2024Aliso Viejo, California, Us• Developing MISRA compliant firmware in C for camera video processors running SafeRTOS• Implemented firmware in C to configure and initialize the video pipeline based on settings stored in persistent memory• Developed thread safe GPIO, SPI and interrupt control drivers in C• Implemented SDK APIs in C to enable customer access to task messaging, peripherals, flash storage, and video processing• Developed various Python tools for the video processor which include a tool to send commands over I2C or UART and another tool to generate flash images containing the bootloader, firmware and various data files• Introduced Python unit testing framework along with coverage tools for automated testing of code -
Embedded Systems Software EngineerGeo Semiconductor, Inc. Jan 2023 - Mar 2023This company was acquired by indie Semiconductor in March 2023
-
Embedded Firmware EngineerInertia Product Development Aug 2022 - Jan 2023Toronto, Ontario, Ca• Wrote and documented reference code in C for the STM32F446 µC to enable rapid development of future projects• Implemented a reference firmware in C on the STM32WB55RG µC to demonstrate usage of BLE• Wrote firmware in C++ to setup and control the TMC2130 stepper motor driver• Reduced runtime of a Python script to download files from AWS by 91% through the use of multithreading -
Firmware EngineerFluidai Jan 2021 - Jan 2022Waterloo, On, Ca• Implemented firmware features in C for Bluetooth connected catheters to monitor a patient’s post-surgical recovery• Developed a BLE protocol that enables tablets to retrieve file names and data stored on a device’s SD card• Improved BLE data transfer by 1333% and reduced its latency by 98% through re-architecting device firmware, and optimizing BLE connection parameters such as the connection interval, queue size and bit rate• Introduced a dynamically adjustable sampling period to reduce device calibration time by 47%• Designed a flexible PCB in KiCAD to connect the impedance sensor to the catheter• Scoped projects for switching from the SD card to flash memory and implementing over-the-air updates• Implemented sleep mode that activates when MCU is idle to reduce power consumption of devices by 56%• Maintained and performed system verification tests according to a QMS system -
Dsp Firmware EngineerInfinera May 2020 - Aug 2020San Jose, California, Us• Improved Python regression test scripts by implementing multithreading to reduce run time by 33%, displaying additional statistics for debugging purposes, and updating pre-existing test cases• Developed CLI commands in C++ for firmware state machines, such as stepping through states and setting breakpoints• Wrote a test for the Digital Coherent Optics Board to verify the stability of digital and optical communication modes• Assisted with testing through development of register API unit tests in C++, and running regression tests in a timely manner -
Software Team MemberUniversity Of Waterloo Robotics Design Team Sep 2018 - Apr 2020Waterloo, Ontario, Ca• Wrote firmware for the STM32F091 µC using the mbed SDK to read current sensors over I2C and send data over CAN• Wrote a ROS package using OpenCV APIs to overlay the compass heading of the robot on to the camera feed -
Embedded Firmware DeveloperBrickeye Sep 2019 - Dec 2019Toronto, Ontario, Ca• Maintained and re-architected C++ production firmware for IoT sensors which transmitted messages over LoRaWAN. This included interfacing with sensors over Onewire and I2C.• Developed data logging firmware in C++ to interface with flash memory, RTCC and USB module over SPI, I2C and UART• Wrote a UART communication protocol in C++ that avoided shorted sensors in a daisy-chained sensor cable• Designed a PCB in KiCAD to log incoming UART data with timestamps from an RTCC on to a microSD card• Ran temperature tests on various batteries to determine the best battery to use for the company's IoT sensors -
Embedded Systems EngineerPegasus Aeronautics Corporation Jan 2019 - Apr 2019• Designed schematics and PCB layouts in EAGLE for Serial to CAN conversion, fan control and battery cell balancing• Developed and tested a PCB for measuring current, voltage, and the power consumption of a drone• Wrote firmware in C for CAN to Serial conversion, SD card data logging and PWM control in TI-RTOS• Implemented firmware in C++ for dual brushless DC motor control by modifying motor control libraries • Performed PCB bring up and tested hardware functionality -
Embedded Systems EngineerPegasus Aeronautics Corporation May 2018 - Aug 2018• Designed circuit schematics and PCB layouts in Eagle for testing fuel injectors and controlling an induction heater• Developed a Windows application using Qt to log and plot data from the fuel injector test rigs• Wrote firmware in Arduino for CAN and UART communication; fuel pump and injection control; PID temperature control• Designed 3D printed enclosures for PCBs using SolidWorks• Improved PCB assembly efficiency by setting up a pick and place machine• Soldered and debugged PCBs -
Mechanical MemberUw Sailbot Dec 2017 - Apr 2018Waterloo, Ontario, Ca• Designed rudder cores using SolidWorks to be fabricated with a laser cutter• Created a SolidWorks model for an electronics test board that was then fabricated with a laser cutter• Fabricated wooden plugs to create a mold for the hull of the boat• Assisted with preparing the hull for the carbon fiber layup by spraying gelcoat -
Mechanical Team MemberRobot In 3 Days At The University Of Waterloo Jan 2018 - Jan 2018I worked in a team to build a competition-ready robot in 72 hours for the FIRST POWERUP game. The main objectives of the game are for robots to place milk crates on teeter-totters 1 ft. high and hang on a 7ft. high rungAlong with 2 other team members, we designed the intake and outtake system of milk crates on the robot. I modeled the intake system using SolidWorks. I also manufactured and assembled parts for the elevator and intake system.
-
CookPizza Pizza Limited Aug 2017 - Aug 2017During the 2017 Canadian National Exhibition, I ensured customer satisfaction by the efficient production of pizza under time constraints. I also maintained a safe and clean kitchen environment by cleaning regularly and restocked the fridge in preparation for the next day.
-
Assistant Piano TeacherSarah Lee'S Private Music Studio Jul 2016 - Aug 2017As an Assistant Piano Teacher, I taught both piano and music theory. I taught students piano technical skills and instructed them on how to improve their playing within an allotted lesson time. For music theory, I taught students the Advanced Rudiments curriculum on a one to one basis to prepare them to take the Advanced Rudiments Exam from the Royal Conservatory of Music.
-
Mechanical Team MemberFrc Team 6135 Oct 2015 - Jun 2017In a large team, we build a competition-ready robot for the annual FIRST Robotics competition over the course of 6 weeks. As a member of the mechanical team, I designed and built subsystems for the robot. I designed and built a wiffle ball shooter that shoots balls 8ft. high and an intake system to intake large plastic gears. These two subsystems were also modeled in SolidWorks after prototyping. I was also responsible for repairing the robot during competition and building wooden game pieces to use for testing the robot.
Steven Ha Skills
Steven Ha Education Details
-
University Of WaterlooAnd Automation Engineering -
Bloor Collegiate InstituteTops On Bloor Program: Talented Offerings In The Programmes Of Sciences
Frequently Asked Questions about Steven Ha
What company does Steven Ha work for?
Steven Ha works for Etched
What is Steven Ha's role at the current company?
Steven Ha's current role is Member of Technical Staff.
What schools did Steven Ha attend?
Steven Ha attended University Of Waterloo, Bloor Collegiate Institute.
What skills is Steven Ha known for?
Steven Ha has skills like Solidworks, Autocad, C++, Microsoft Excel, Teamwork, Programming, Java, Microsoft Word, Technical Writing, Microsoft Powerpoint, Time Management, Soldering.
Free Chrome Extension
Find emails, phones & company data instantly
Download 750 million emails and 100 million phone numbers
Access emails and phone numbers of over 750 million business users. Instantly download verified profiles using 20+ filters, including location, job title, company, function, and industry.
Start your free trial