I'm an engineer transitioning from web development into embedded software engineering, currently focused on STM32 microcontrollers and the ARM Cortex-M architecture. My background in full-stack web development gives me a strong foundation in software architecture, clean code practices, and problem-solving — which I'm now applying to bare-metal and RTOS-based firmware development.
- 🔧 Currently working with STM32 (Cortex-M series) using STM32CubeIDE
- 🏗️ Studying ARM Cortex-M architecture at a low level: operation modes, access levels, exception/interrupt handling, fault exceptions, SVC calls, and bit-banding
- 📡 Building projects around peripherals (GPIO, UART, I2C, SPI, ADC, Timers/PWM) and interrupt-driven design
- 🧠 Building RTOS internals from scratch (context switching, task stacks, preemptive scheduling) and exploring FreeRTOS, memory-constrained programming, and low-level debugging
- 🌱 Background in JavaScript / TypeScript / React — bringing solid software engineering discipline into embedded work
Tools & Environment: STM32CubeIDE · STM32CubeMX · CubeProgrammer · ST-Link · Logic Analyzer · Oscilloscope · Keil / GCC ARM Toolchain
Web Background (previous stack): React.js, Next.js, Node.js, TypeScript, Express.js
| Project | Description | Stack |
|---|---|---|
| ARM-Cortex-M-Preemptive-Scheduler | A bare-metal preemptive task scheduler built from scratch on STM32F411, implementing context switching, stack initialization, and SysTick/PendSV-driven task management | C, Assembly, STM32, RTOS Internals |
| ARM-Cortex-M-Programming | Deep-dive into ARM Cortex-M architecture: operation modes, access levels, stack pointer, bit-banding, interrupt priority, exception entry/exit, fault handling, and SVC calls | C, Assembly, ARM Cortex-M |
| Embedded-C-Programming | Embedded C programming & firmware development on STM32F411CEU6 using STM32CubeIDE | C, Assembly |
| IoT-Environmental-Monitoring-System | Cloud-connected ESP8266 system for CO gas & environmental monitoring with OLED UI and remote alerts | C++, IoT, Thinger.io |
| OLED-Menu | ESP8266-based OLED menu system covering button debouncing and embedded UI logic | C++ |
I'm always open to discussing embedded systems, firmware development, or collaborating on open-source hardware/software projects.

