We are looking for a Senior Full-Stack Software Engineer to join our client's team for a 6+ month contract position in Berkeley, California. You will build and maintain a full-stack application used to deploy, configure, test, and service battery systems in the field. The product runs on Linux-based edge devices and plant servers, supporting engineers, technicians, and testers who work with deployed hardware. This role is ideal for an independent builder who can quickly understand complex systems and deliver features across the entire stack with minimal guidance.
Responsibilities
- Build end-to-end features across React front ends, backend services, APIs, device profiles, and integrations.
- Develop software for Linux, edge devices, and plant-server environments.
- Connect user workflows to embedded services, control software, and physical hardware.
- Make practical UI decisions using React and Material UI, partnering with the in-house designer as needed.
- Work with Go, Python, gRPC, MQTT, and related messaging and service technologies.
- Own features from requirements through implementation, testing, deployment, and field feedback.
- Collaborate with software, firmware, electrical, mechanical, field, and test engineers.
Qualifications
Required
- 7+ years of professional software engineering experience.
- Strong full-stack experience building and supporting production applications.
- Senior-level React experience.
- Strong Go experience; Python experience is a plus.
- Experience with gRPC, MQTT, Protobuf, or similar communication technologies.
- Experience building software for Linux, edge devices, embedded systems, or other locally deployed environments.
- Ability to work across application, backend, integration, and deployment layers.
- Strong ownership, initiative, and ability to make sound technical and UI decisions independently.
Preferred
- Experience with industrial controls, SCADA, energy storage, power systems, manufacturing, robotics, or other hardware-connected products.
- Familiarity with OPC UA, Modbus, DNP3, CAN, or similar industrial protocols.
- Experience integrating software with physical devices, sensors, or control systems.
- AWS or cloud infrastructure experience. The broader infrastructure uses AWS, but this product is primarily deployed locally.