Embedded Systems Developer

Computer Engineering student at UC San Diego with expertise in embedded systems, firmware development, and hardware-software integration. Passionate about creating efficient solutions for real-world applications.

San Diego, CA
Available for opportunities
Hasaan Haq

About Me

I'm a dedicated Computer Engineering student with hands-on experience in embedded systems development, firmware programming, and hardware testing. My passion lies in bridging the gap between hardware and software to create innovative solutions.

Education

University of California San Diego

B.S. in Computer Engineering

Expected June 2026

Relevant Coursework:

Advanced Data StructuresSystems ProgrammingComputer ArchitectureOperating SystemsDigital Logic Design
Current Focus

Currently working on multiple embedded systems projects, including lab automation systems and autonomous vehicle control. I'm particularly interested in:

  • Real-time embedded systems and RTOS development
  • Hardware-software integration and testing
  • Autonomous systems and control algorithms

Technical Skills

Languages
CC++PythonJavaAssemblyHTML/CSS/JSSystemVerilog
Tools
GitLogic AnalyzersOscilloscopesGDBValgrindSaleaeAltiumModelSimPSpiceOrCADQuartus
Systems & OS
LinuxRTOS ConceptsMultithreadingTCP/IPPOSIXKernels
Embedded
STM32ESP32GPIOADCPWMSPII²CUART

Professional Experience

Building expertise through hands-on embedded systems development and engineering roles

Embedded Systems Developer
GolTech, LLCSan Diego, CA
Aug 2025 – Present
  • Co-developing bare-metal STM32 firmware for GolTech's lab automation system with RS485 control of heating PID, dryer, mechanical actuation, and fluidics.
  • Built an engineering GUI enabling parameter set/get, real-time status monitoring, data graphing, and automated run logging for analysis.
  • Integrated firmware and GUI for seamless operation, validating subsystem performance and reliability during pre-alpha testing.
Embedded Systems Developer
Triton A.I.San Diego, CA
June 2025 – Present
  • Developing STM32 Nucleo (Mbed OS) control for autonomous go-kart with manual, override, and full autonomy modes.
  • Implemented a multi-mode state machine with watchdog safety and CAN bus actuation for throttle, steering, and braking, ensuring responsive and fail-safe control.
  • Integrated sensor feedback for closed-loop control and optimized performance via profiling tools and structured logs.
Embedded Systems Engineering Intern
Calpak USA, Inc.Los Angeles, CA
Oct 2022 – Sept 2024
  • Modified firmware for an ESP32-C3 Wi-Fi LED dimmer module, improving stability and adding OTA updates.
  • Reverse-engineered UART/SPI protocols for an STM32F429 Plethysmograph using a Saleae logic analyzer.
  • Automated STM32F103 firmware flashing/testing for 1000+ boards with Python, reducing QA time and boosting reliability.
  • Debugged STM32 firmware with GDB, fixing GPIO, ISR, and memory issues to improve hardware reliability by 15%.
  • Performed AOI on 3,000+ SMT assemblies, improving defect detection and raising first-pass yield by 15–20%.

Featured Projects

A showcase of my technical projects and contributions

Secure Encrypted Data Manager
C++OpenSSLAES-256File I/OCLI
  • Built a command-line C++ application to encrypt and decrypt sensitive records using AES-256 encryption via OpenSSL.
  • Designed a modular architecture separating cryptographic routines, file I/O, and user interaction for maintainability and testability.
  • Explored cloud backup support using AWS S3 with emphasis on credential security, encryption-at-rest, and REST API access patterns.
USB-Multi-Port Inflator
CPython
  • Wrote Python scripts to flash and verify STM32F103 firmware, automating repetitive QA tasks and reducing manual errors.
  • Tested firmware on 1,000+ boards, resolving USB-to-UART bridge issues and improving hardware-level reliability.
  • Logged and categorized frequent flash failures, helping QA teams identify defects and streamline rework.
Autonomous Go-Kart Controller
C++Mbed OSSTM32 NucleoCAN BusRC Systems
  • Developed embedded control software on STM32 Nucleo boards using Mbed OS to support manual, autonomous override, and full autonomous driving modes.
  • Implemented a multi-mode state machine with watchdog safety, enabling fail-safe transitions and emergency stop functionality.
  • Designed and integrated CAN bus actuation for throttle, steering, and braking, incorporating sensor feedback for closed-loop control.
Custom Kernel, Virtual Memory, and File System Modules in Nachos
Java
  • Engineered core OS components in Nachos, implementing thread scheduling, alarm clock timers, join synchronization, condition variables, and rendezvous point exchange.
  • Developed a user-space syscall interface and supported multiprogramming with virtual memory using TLBs, page tables, and demand paging.
  • Implemented swap-backed virtual memory with dirty-bit optimization, pinned-page synchronization, and inverted page tables.

Let's Connect

I'm always interested in discussing new opportunities and innovative projects