US Citizen
HASAAN HAQ
EDUCATION
University of California San Diego
Expected June 2026
B.S. in Computer Engineering
Relevant Coursework: Advanced Data Structures, Systems Programming, Signals and Circuits Analysis, Assembly Programming, Digital Logic Design, Computer Organization, Computer Architecture, Design & Analysis of Algorithms, Operating Systems, Advanced Digital Design
EXPERIENCE
Embedded Systems Developer — GolTech, LLC • San Diego, CA
Feb 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
Sept 2024 – 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%.
PROJECTS
Secure Encrypted Data Manager | C++, OpenSSL, AES-256, File I/O, CLI | Link
- 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.
- Handled custom file formats and secure user input to manage data with confidentiality and structural integrity.
USB-Multi-Port Inflator | C, Python
- 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 OS, STM32 Nucleo, CAN Bus, RC 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.
- Optimized system responsiveness and reliability through performance profiling, structured logging, and real-time status indicators.
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 with page replacement via the clock algorithm.
- Extended the system to support lazy loading, memory-mapped file access, syscall handling (e.g., exec, join, exit), and kernel-mode process isolation and memory cleanup.
- Implemented swap-backed virtual memory with dirty-bit optimization, pinned-page synchronization, and inverted page tables to support concurrent processes and safe page eviction.
SKILLS
Languages: C, C++, Python, Java, Assembly, HTML/CSS/JS, SystemVerilog
Tools: Git, Logic Analyzers, Oscilloscopes, GDB, Valgrind, Saleae, Altium, ModelSim, PSpice, OrCAD, Quartus
Systems & OS: Linux, RTOS Concepts, Multithreading, TCP/IP, POSIX, Kernels
Embedded: STM32, ESP32, GPIO, ADC, PWM, SPI, I²C, UART