At KATERRA, we lead from every seat. Our ideal team members are self-starters that embrace ambiguity, think big, and bring their own uncompromising standards of excellence.
One of KATERRA's cultural principles is Diversity. We believe different backgrounds, ideas, and skillsets result in better outcomes. KATERRA does not discriminate in employment based on race, color, creed, national origin, ancestry, sex, marital status, disability, religious or political affiliation, age, sexual orientation, or gender identity. KATERRA encourages people of all backgrounds to apply, including people of color, immigrants, refugees, women, LGBTQIA, people with disabilities, veterans and those with diverse life experiences.
Staff Systems Engineer
The Staff Systems Engineer is a technical lead in the system's engineering team to ensure Katerra's product are high quality in design, development and production. It is a cross-functional role where the candidate is involved in several aspects of product development including specification, system architecture, modeling, algorithms, firmware design, connectivity interfaces, standalone and system test, automation, reliability and safety certifications and manufacturing. As a Staff Systems Engineer within the team you will be contributing to the design / development of world leading products in a dynamic and growing environment.
Essential Duties & Responsibilities
- Develop detailed architecture and plans for System Functional, Performance, Reliability and Compliance qualification.
- Actively drive the development of automated system validation environment.
- Support/lead the development and execution of sub-system and system-level test-plans and test-scripts.
- Bring up, diagnostic software development, and driver development / enhancements as required.
- Identify problems and issues proactively and debug them when they arise by understanding the system level implications.
- Compile and present reports representing the status of System Qualification.
- Develop suite of Acceptance tests for sanitizing hardware and firmware releases.
- Support/lead architecture analysis, modeling, simulation, functional and performance analysis, thermal analysis, environmental and EMI analysis.
- Support/lead the identification, and/or implementation of communication protocols.
- Support project management and communication to executive management and other groups.
- Recommend and implement good software development processes.
- Support Architecture, Engineering, and Construction teams in the use of internally developed products or vetting new products produced by others.
Required Skills & Experience
- Bachelor's/Master's Degree in Computer Science or Electrical Engineering.
- C/C++ and Python programming skills.
- Knowledge of RTOS, Device Drivers and various CPU architectures
- Fluent with memory access techniques, processor cores, inter-processor communications
- Experience in interfacing with Peripherals such as I2C, UART, SPI, Ethernet, etc.
- Hands-on system engineering experience.
- Ability to write efficient programs and understand corner cases
- Experienced in implementation of algorithms in firmware
- Track record in complete product life cycle
- Good debugging skills
- Good written and verbal communication skills
- Good technical and analytical skills
- Ability to work in a fast paced and cross-disciplinary environment
- Ability to work independently with minimal guidance
Additional Skills & Experience
- Experience in building power distribution systems.
- Technical understanding of renewable energy generators (photovoltaic, wind, etc.)
- Experience with battery and battery management systems.