Post Job Free
Sign in

Software Engineer Embedded

Location:
Buffalo, NY
Posted:
May 28, 2025

Contact this candidate

Resume:

HARSHIT MALPANI

716-***-**** ********@*******.*** linkedin.com/in/hmalpani github.com/hmalpani Embedded Software Engineer with 3+ years of experience in firmware development, secure OTA workflows, and embedded networking. Passionate about building reliable systems at the intersection of hardware and software. EDUCATION

State University of New York at Buffalo Buffalo, NY Masters of Science in Computer Science Aug. 2024 – Jan 2026 Savitribai Phule Pune University Pune, India

Bachelor of Engineering in Computer Engineering Aug. 2017 – May 2021 EXPERIENCE

Embedded Software Engineer Feb 2023 – Aug 2024

Espressif Systems India Pvt. Ltd. Pune, India

• Designed Delta OTA workflow reducing firmware update size by up to 70%, improving update efficiency for resource-constrained devices.

• Enabled the use of ECDSA peripheral for private key operations during TLS connection to help reduce the security risk of leaking the private key.

• Added support for building Espressif’s IoT Development Framework(ESP-IDF) for Linux to reduce development time.

• Improved the reliability of Secure Boot workflow to avoid bricking of the devices.

• Enabled the support to use of TLS v1.2 and TLS v1.3 simultaneously using MbedTLS library.

• Prototyped OTA update workflow for non-application partitions, enhancing versatility of firmware deployment. Associate Engineer July 2021 – Jan 2023

Espressif Systems India Pvt. Ltd. Pune, India

• Maintained the middleware networking libraries like HTTP Client and Server, OTA Firmware Updates

• Applied cryptography principles to develop Pre-Encrypted OTA Firmware Upgrade workflow to improve the security

• Migrated the internal test framework to Pytest framework, which helped reduce the CI infrastructure load.

• Provided support to customers’ queries on GitHub and ESP32 forum.

• Added support for E-Fuse for ESP32-S3 in Amazon DPK

• Worked on setting up test infrastructure for Amazon DPK project. Collaborated with Amazon to fix the DPK middleware and improve test results and accuracy. Automated the test runs. TECHNICAL SKILLS

Languages: C, C++, Python, Java, SQL, MySQL, JavaScript, HTML/CSS Developer Tools: Git, VS Code, JIRA, CMake, OpenOCD Libraries: pandas, NumPy, Matplotlib, React

Systems & Embedded Skills: IoT, RTOS, RISC-V Assembly, Embedded Development, Microcontroller Programming, Socket Programming, TCP/IP, TLS, Linux, Network Protocols, Cryptography, Operating System, Communication Skills, Software Development Life Cycle PROJECTS

Pintos Operating System - Threads & User Programs C Feb 2025 – Apr 2025

• Implemented key OS concepts including thread scheduling, priority inversion handling (via priority donation), nested priority donation, and load-based scheduling (MLFQS) by modifying Pintos kernel.

• Replaced the default round-robin scheduler with a priority-based scheduler, ensuring starvation-free thread management.

• Extended the Pintos kernel to support loading and execution of user programs from ELF binaries with proper synchronization.

• Implemented 13 system call handling, including argument passing, memory validation, and file operations. Text Chat Application C++ Mar 2025 – Apr 2025

• Developed a TCP-based client-server chat application using C and the select system call for I/O multiplexing

• Implemented a custom shell-like interface to support real-time message exchange and command parsing

• Managed multiple simultaneous client connections efficiently without multithreading, leveraging select .

• Handled robust error-checking, socket cleanup, and edge cases for stable communication. 16-bit Single-Cycle Processor Verilog, Vivado, Basys 3 FPGA Mar 2025 – Apr 2025

• Designed and implemented a 16-bit single-cycle, non-pipelined CPU supporting arithmetic, logic, memory, branch, and jump instructions.

• Developed core modules including Program Counter, ALU, Control Unit, and Register File; verified correctness through simulations in Vivado.

• Verified the processor on a Basys 3 FPGA board, interfaced with physical I/O (buttons, LEDs) to demonstrate instruction execution and register updates.



Contact this candidate