> Markdown version of [/jobs/ext/3279104-embedded-software-engineer](https://www.wearedevelopers.com/jobs/ext/3279104-embedded-software-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Embedded Software Engineer - **Company:** CareerCircle - **Location:** Palo Alto, CA, United States - **Experience:** Expert - **Salary:** $135,200.0 - $166,400.0 - **Contract:** Temporary to permanent - **Skills:** Clean Code Principles, C (Programming Language), Algorithm Design, Acceptance Test-Driven Development, Unit Testing, C++ (Programming Language), Communications Protocols, Computer Engineering, Continuous Integration, Serialization, Data Structures, Software Debugging, Embedded Software, Ethernet, Firmware, Protocol Buffers, Python (Programming Language), Network Protocols, Software Architecture, Real-Time Operating Systems, Software Engineering, TCP/IP, Transmission Control Protocol (TCP), Universal Asynchronous Receiver/Transmitter, Multithreading, Serial Peripheral Interface, PIC Microcontroller, Test-Driven Development (TDD), Information Technology - **Published:** September 30, 2026 - **Apply:** https://www.careercircle.com/jobs/all/all/usa/ca/palo-alto/68f962b8-1e6e-4e08-825a-5ad283875d6f ## About the Role TCP/IP Planning Firmware Debugging Soldering Visionary Leadership Innovation Scalability Reliability Coordinating Unit Testing Oscilloscope Logic Analyzer Problem Solving Data Structures Control Systems Computer Science Algorithm Design Embedded Systems Microcontrollers Protocol Buffers Charging Systems Embedded Software Network Protocols Embedded Firmware Electric Vehicles Software Adapters Urine Drug Screen Battery Management Software Engineering Software Development Computer Engineering Software-In-The-Loop Laboratory Equipment Architectural Design Firmware Development Software Architecture Energy Transformation Electrical Engineering Continuous Integration C (Programming Language) Communications Protocols Engineering Design Process C++ (Programming Language) Serial Peripheral Interface Real-Time Operating Systems Test-Driven Development (TDD) Universal Asynchronous Receiver/Transmitter, * Degree in Computer Engineering, Computer Science, Electrical Engineering, or equivalent experience. * 5+ years of professional firmware development experience. * Strong proficiency in C and C++ for real-time embedded systems. * Extensive experience developing on embedded microcontrollers running RTOS. * Significant experience with multithreaded embedded software design and implementation. * Hands-on experience with peripheral interfaces including CAN, Ethernet, SPI, I2C, UART, ADC, and PWM. * Experience with networking protocols such as TCP, IP, and UDP. * Comfort working in a lab environment using oscilloscopes, logic analyzers, CAN tools, soldering irons, and related equipment for integration and debugging. * Solid understanding of software architecture, algorithm development, data structures, and modular, maintainable code design. * Demonstrated ability to deliver high-quality, production-ready firmware in a real-time environment. * A test-driven mindset, with unit testing, validation planning, and quality practices embedded in the development process. * Strong problem-solving skills with the ability to decompose complex issues and deliver practical solutions efficiently., * Experience implementing firmware for power conversion systems, thermal control systems, battery management, or other highly physical product implementations. * Familiarity with Protobuf for data serialization. * Experience with UDS (Unified Diagnostic Services) or similar diagnostic protocols. * Experience working on systems that integrate both firmware and hardware in high-reliability environments. * Passion for tackling challenging technical problems and continuously improving systems and processes., Individual compensation offered for this position within this range will depend on many factors, including qualifications, skills, relevant experience, job knowledge, geographic location, internal equity, and other pertinent job-related factors., Palo Alto, CA*On-Site I2C TCP/IP Planning Firmware Debugging Soldering Visionary Leadership Innovation Scalability Reliability Coordinating Unit Testing Oscilloscope Logic Analyzer Problem Solving Data Structures Control Systems Computer Science Algorithm Design Embedded Systems Microcontrollers Protocol Buffers Charging Systems Embedded Software Network Protocols Embedded Firmware Electric Vehicles Software Adapters Urine Drug Screen Battery Management Software Engineering Software Development Computer Engineering Software-In-The-Loop Laboratory Equipment Architectural Design Firmware Development Software Architecture Energy Transformation Electrical Engineering Continuous Integration C (Programming Language) Communications Protocols Engineering Design Process C++ (Programming Language) Serial Peripheral Interface Real-Time Operating Systems Test-Driven Development (TDD) Universal Asynchronous Receiver/Transmitter +0 Google IT Automation with Python ## Description This role focuses on designing, developing, and optimizing real-time firmware for current and next-generation fast DC charging systems. You will build high-quality embedded software for charging equipment, including fast chargers and adapters, and collaborate closely with hardware teams to deliver robust, scalable solutions. The position offers the opportunity to work with cutting-edge tools and practices to help create one of the most advanced electric vehicle charging networks in the world., * Design, implement, and maintain firmware for embedded system components within fast DC charging equipment. * Develop, enhance, and debug new and existing real-time firmware in C and C++ for embedded microcontrollers running RTOS. * Perform hands-on bring-up of new products, supporting them from prototype through manufacturing and into high-volume production. * Create and maintain continuous integration tests, including unit tests, software-in-the-loop (SIL), and hardware-in-the-loop (HIL), to validate component and system functionality. * Collaborate closely with hardware engineers to co-design optimized solutions that meet aggressive performance and schedule targets. * Focus on peripheral interfacing and communication protocols, ensuring reliable integration of interfaces such as CAN, Ethernet, SPI, I2C, UART, ADC, and PWM. * Apply strong software engineering fundamentals, including architecture design, algorithm development, data structures, and modular code organization, to produce maintainable and scalable firmware. * Use lab equipment such as oscilloscopes, logic analyzers, CAN tools, and soldering equipment to support integration, debugging, and validation activities. * Contribute to firmware implementations for highly physical systems such as power conversion, thermal controls, or battery management where applicable. * Adopt and promote a test-driven approach by defining unit tests, validation plans, and quality checks as an integral part of the development process. * Break down complex technical problems into manageable tasks and drive them to completion with a focus on quality and efficiency. ## Related Videos - [An Applied Introduction to eBPF with Go](https://www.wearedevelopers.com/videos/1075-an-applied-introduction-to-ebpf-with-go) - [The Gashlycrumb Tinies of AI Networking You Must Know (or Languish!)](https://www.wearedevelopers.com/videos/2067-the-gashlycrumb-tinies-of-ai-networking-you-must-know-or-languish) - [Playing Pong on a shoulder press machine](https://www.wearedevelopers.com/videos/100140-playing-pong-on-a-shoulder-press-machine) - [More efficient software for more efficient microchips](https://www.wearedevelopers.com/videos/1164-more-efficient-software-for-more-efficient-microchips) - [Building a hypercar from scratch](https://www.wearedevelopers.com/videos/607-building-a-hypercar-from-scratch) - [Turning Container security up to 11 with Capabilities](https://www.wearedevelopers.com/videos/718-turning-container-security-up-to-11-with-capabilities) ## Related Articles - [Highest Paying Tech Companies for Developers](https://www.wearedevelopers.com/magazine/220-highest-paying-tech-companies-for-developers) - [Dev Digest 120 - Apple and peers](https://www.wearedevelopers.com/magazine/455-dev-digest-120-apple-and-peers) - [7 Important Tips That Every Software Developer Should Know](https://www.wearedevelopers.com/magazine/101-7-important-tips-that-every-software-developer-should-know) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [Should senior developers refuse interview coding challenges?](https://www.wearedevelopers.com/magazine/29-should-senior-developers-refuse-interview-coding-challenges) - [Is Software Engineering Over-Saturated?](https://www.wearedevelopers.com/magazine/418-is-software-engineering-over-saturated)