Software Engineer
Role details
Job location
Tech stack
Job description
Charging Infrastructure, Internet Of Things (IoT) Authorization (Computing) Linux On Embedded Systems Go (Programming Language) Engineering Design Process Software Quality (SQA/SQC) Electric Power Distribution Rust (Programming Language) Test-Driven Development (TDD) Mobile Application Development Transport Layer Security (TLS) Electric Vehicle (EV) Installation Transmission Control Protocol (TCP), This role focuses on developing and maintaining the core software that powers a large-scale fast-charging network for electric vehicles. You will build applications for an embedded site controller that securely manages all devices at charging sites, including billing, authorization, payment terminals, displays, power distribution, and cloud communication. The software you create will run on embedded Linux, be primarily written in Golang, C, and Rust, and will provide critical data to mobile applications and vehicle user interfaces. You will work in a dynamic, fast-paced environment, contributing directly to next-generation charging products and the broader adoption of electric vehicles., * Develop high-quality, testable software using Golang, C, and/or Rust for embedded Linux environments.
- Design and implement solutions within a microservice architecture that directly impact customer experience and system reliability.
- Contribute to the applications running on the site controller that manage billing, authorization, payment terminals, displays, and site-level power distribution.
- Implement secure and robust communication between site controllers and cloud services to support mobile apps and vehicle user interfaces.
- Perform hands-on bring-up of new products, including commissioning activities and improving serviceability for field deployments.
- Investigate and perform root cause analysis of field issues, delivering quick, high-quality fixes and long-term improvements.
- Develop and maintain continuous integration tests, including unit tests, software-in-the-loop (SIL), and hardware-in-the-loop (HIL) tests to validate component and system functionality.
- Collaborate closely with validation teams to define, refine, and execute integration test strategies for complex embedded and IoT systems.
- Apply multi-threaded and multi-process programming techniques to build performant, reliable, and scalable embedded applications.
- Use object-oriented design principles and best practices to structure maintainable and extensible software components.
- Participate in code reviews, technical discussions, and design sessions to uphold high engineering standards and share knowledge with the team.
- Continuously learn and adapt to new technologies, tools, and processes in a rapidly evolving environment focused on EV charging innovation.
Requirements
gRPC Billing Firmware Visionary Pipelines Operations Innovation Code Review Scalability Reliability Testability Multitasking Unit Testing Communication Microservices Collaboration Cloud Services Customer Service Embedded Systems Protocol Buffers Electric Vehicles Power Distribution Application Layers Battery Management Root Cause Analysis Integration Testing Software Development Software-In-The-Loop Emerging Technologies Energy Transformation Continuous Integration Object-Oriented Design Continuous Development, * 5+ years of professional software development experience using application-layer languages such as Golang, C, and Rust.
- Strong experience developing software for embedded Linux platforms, including familiarity with system-level concepts and constraints.
- Proficiency in Golang, C, or Rust, with the ability to write efficient, reliable, and maintainable code.
- Hands-on experience with multi-threaded and multi-process programming in embedded or systems environments.
- Experience writing unit tests and practicing test-driven development to ensure software quality and reliability.
- Experience developing software for Internet of Things (IoT) platforms, including device-to-cloud communication.
- Proven experience building mission-critical applications on embedded Linux, with a focus on robustness and uptime.
- Familiarity with data formats and communication technologies such as JSON, Protobuf, gRPC, REST, HTTP, TLS, TCP, UDP, and CAN.
- Solid understanding of object-oriented design principles and their application in embedded and distributed systems.
- Ability to multi-task, prioritize work effectively, and operate in a fast-paced, dynamic environment.
- Strong communication skills, with the ability to collaborate effectively across engineering and validation teams.
Additional Skills & Qualifications:
- Experience with device-to-cloud interfaces for charging protocols such as OCPP and ISO 15118.
- Experience in implementing software for power conversion, thermal controls, battery management, or other highly physical product implementations.
- Experience collaborating with cross-functional teams, including hardware, firmware, validation, and operations, in the context of complex embedded systems.
- Interest in electric vehicles, fast-charging infrastructure, and advancing the adoption of sustainable transportation.
- Demonstrated passion for continuous learning and staying current with emerging technologies in embedded systems and distributed architectures.
Work Environment:
You will work in a fast-paced, engineering-driven environment focused on building and scaling next-generation EV charging infrastructure. The team develops applications that run on embedded Linux site controllers and uses languages such as Golang, C, and Rust within a microservice-oriented architecture. Daily work involves close collaboration with validation and other engineering teams, participation in continuous integration pipelines with unit, SIL, and HIL testing, and hands-on interaction with embedded hardware during product bring-up and commissioning. The environment emphasizes high reliability, mission-critical performance, secure connectivity to cloud services, and rapid iteration to support large-scale field deployments. Job Type & Location, Palo Alto, CA*On-Site
JSON gRPC Billing Firmware Visionary Pipelines Operations Innovation Code Review Scalability Reliability Testability Multitasking Unit Testing Communication Microservices Collaboration Cloud Services Customer Service Embedded Systems Protocol Buffers Electric Vehicles Power Distribution Application Layers Battery Management Root Cause Analysis Integration Testing Software Development Software-In-The-Loop Emerging Technologies Energy Transformation Continuous Integration Object-Oriented Design Continuous Development Artificial Intelligence Charging Infrastructure Internet Of Things (IoT) Authorization (Computing) Linux On Embedded Systems Go (Programming Language) Engineering Design Process Software Quality (SQA/SQC) Electric Power Distribution Rust (Programming Language) Test-Driven Development (TDD) Mobile Application Development Transport Layer Security (TLS) Electric Vehicle (EV) Installation Transmission Control Protocol (TCP) +0
Google IT Automation with Python
Benefits & conditions
This is a Contract to Hire position based out of Palo Alto, CA. Pay and Benefits
The pay range for this position is $65.00 - $80.00/hr.
Eligibility requirements apply to some benefits and may depend on your job classification and length of employment. Benefits are subject to change and may be subject to specific elections, plan, or program terms. If eligible, the benefits available for this temporary role may include the following:
- Medical, dental & vision
- Critical Illness, Accident, and Hospital
- 401(k) Retirement Plan - Pre-tax and Roth post-tax contributions available
- Life Insurance (Voluntary Life & AD&D for the employee and dependents)
- Short and long-term disability
- Health Spending Account (HSA)
- Transportation benefits
- Employee Assistance Program
- Time Off/Leave (PTO, Vacation or Sick Leave) Workplace Type