What are the responsibilities and job description for the Electrifying Software Architect position at ChargePoint?
About ChargePoint
We are at the forefront of the electric vehicle revolution, powering one of the world's leading EV charging networks and a comprehensive set of hardware, software, and mobile solutions for every charging need across North America and Europe.
Our mission is to make e-mobility a global reality by bringing together drivers, businesses, automakers, policymakers, utilities, and other stakeholders. Since our founding in 2007, we have focused solely on making the transition to electric easy for businesses, fleets, and drivers.
At ChargePoint, we foster a positive and productive work environment by living our values of Courageous Innovation, Collaborative Spirit, Customer Obsession, Open Communication, and Achieving Excellence. These values guide how we show up every day, align, and work together to build a brighter future for all.
Your Role in Our Success
We are seeking an experienced engineer who will play a pivotal role in building cutting-edge software for our next-generation vehicle charging platform.
You will be responsible for architecting, designing, implementing, and testing new systems in a rapidly evolving problem-space, collaborating cross-functionally and globally with hardware, manufacturing, and other software teams.
Your Key Responsibilities
- Develop platform software, including Linux kernel, and communication interfaces like CAN, RS-232/485, I2C, SPI, Modbus, and PPP
- Leverage networking expertise, including LTE, Wi-Fi, and BLE, to drive system design
- Participate in design and code reviews, as well as mentor other team members to promote knowledge sharing and growth
Requirements
- Bachelor's or Master's degree in Computer Science or Electrical Engineering
- 12 years of experience in developing embedded system products with expertise in C/C , Rust, and Python
- Expert-level C/C coding in a Linux/RTOS environment is essential
- Experience in asynchronous event-driven architecture and developing scalable, latency-optimized distributed application services
- Familiarity with DBus, buildroot, GCC, toolchain, Make, CMake, git, and gdb is required
- Demonstrated ability to make critical system-level design decisions and drive projects from start to finish with minimal supervision
Preferred Qualifications
- Coding experience in Rust and Python
- Exposure to connectivity architecture using wireless (Cellular, Wi-Fi, Bluetooth, and NFC) and wired (Ethernet) interfaces is beneficial
- Knowledge of networking protocols, including IPv6, VPN, TLS, etc., is desirable
- Working with EV/EVSE products is highly valued