Software Developer - AI Trainer
DataAnnotation
Full-time
Worcester, MA
Job description
Job Overview
We are seeking an experienced Senior Embedded Software Developer to lead the design, development, and optimization of real-time operating based systems (RTOS) for battery management and energy storage applications. This role focuses on creating robust, low-latency embedded software to support Battery Management Systems (BMS) and related technologies. The ideal candidate will have deep expertise in RTOS, a strong background in embedded systems programming, and a proven track record of delivering high-performance solutions for large scale battery-powered devices. As a senior member of the team, you will mentor junior developers, drive technical excellence, and contribute to innovative energy solutions.
Key Responsibilities
- Design, develop, and maintain embedded software for battery applications running on real-time operating systems (RTOS) such as FreeRTOS, Zephyr, or VxWorks.
- Implement and optimize low-level drivers, middleware, and application code to interface with BMS hardware, sensors, and power electronics.
- Develop real-time algorithms for battery monitoring, including state-of-charge (SOC), state-of-health (SOH), and fault detection, ensuring precise timing and resource efficiency.
- Architect software solutions to meet stringent performance, latency, and power consumption requirements in battery-powered systems.
- Collaborate with hardware engineers to define system requirements, debug issues, and ensure seamless hardware-software integration.
- Lead the integration of communication protocols (e.g., CAN, SPI, I2C, UART) for battery system connectivity and data exchange.
- Conduct code reviews, enforce best practices, and mentor junior developers in RTOS development and embedded programming techniques.
- Perform unit testing, system-level validation, and debugging using tools like JTAG, oscilloscopes, and logic analyzers.
- Ensure compliance with safety and reliability standards (e.g., ISO 26262, MISRA C) for battery-related applications.
- Optimize software for memory-constrained environments and enhance system robustness under varying operating conditions (e.g., temperature, load).
- Document software designs, processes, and test results to support project milestones and regulatory requirements.
- Stay current with advancements in RTOS, embedded tools, and battery technology to propose innovative improvements.
Qualifications
- Bachelor’s or Master’s degree in Computer Engineering, Electrical Engineering, Computer Science, or a related field.
- 6+ years of experience in embedded software development, with at least 3 years focused on RTOS-based systems.
- Extensive experience programming in C/C++ for resource-constrained, real-time embedded applications.
- Proven expertise with RTOS platforms (e.g., FreeRTOS, Zephyr, RTEMS, or VxWorks) and their schedulers, task management, and interrupt handling.
- Strong understanding of battery management systems, including SOC/SOH algorithms and power management principles.
- Hands-on experience with microcontroller architectures (e.g., ARM Cortex-M, PIC, or RISC-V) and peripheral integration.
- Proficiency with embedded development tools (e.g., Keil, IAR, GCC, GDB) and version control systems (e.g., Git).
- Familiarity with communication protocols (CAN, SPI, I2C, UART) and their real-time implementation.
- Experience with debugging and testing embedded systems in lab environments using oscilloscopes, multimeters, and protocol analyzers.
Preferred Skills
- Prior work on battery applications for renewable energy, or industrial systems.
- Knowledge of functional safety standards (e.g., ISO 26262) and secure coding practices.
- Experience with model-based development tools (e.g., MATLAB/Simulink) for embedded code generation.
- Familiarity with wireless protocols (e.g., BLE, Zigbee) or cloud connectivity for battery monitoring.
- Exposure to bare-metal programming and transitioning systems to RTOS environments.
Key Competencies
- Strong analytical and problem-solving skills with a focus on real-time performance.
- Leadership ability to guide teams and influence technical direction.
- Excellent attention to detail and commitment to writing clean, maintainable code.
- Collaborative mindset to work across hardware, software, and systems engineering teams.
- Ability to thrive in a fast-paced environment and manage complex, time-sensitive projects.
Why Join Us?
- Join a cutting-edge team advancing Green Energy solutions through innovative technology.
- Competitive compensation package.
- Opportunities to lead impactful projects and grow within a dynamic, forward-thinking company.
- Work in an inclusive culture that values technical expertise and creativity.
How to Apply
Please submit your resume, a cover letter highlighting your RTOS and battery application experience, and links to relevant projects or GitHub repositories to [email protected]. We look forward to welcoming a passionate and skilled developer to our team!
Anode Power is an equal opportunity employer committed to fostering a diverse and inclusive workplace.
Job Type: Full-time
Pay: $115,000.00 - $190,000.00 per year
Benefits:
- Dental insurance
- Health insurance
- Paid time off
Work Location: In person