End of Line Software Development Engineer
- Fast track your skills with exposure to technical challenges
- Take charge and electrify your career
- Join us on our mission to electrify transportation
About Tritium
Join Tritium, a leader in advanced DC fast charging infrastructure for electric vehicles.
Recently acquired and revitalized under new ownership, Tritium is dedicated to leading the charge in the evolving EV industry. Our state-of-the-art technology empowers public and fleet customers to charge their electric vehicles seamlessly, anywhere and anytime, accelerating the global transition to sustainable transportation.
As we embark on this new chapter, we're seeking passionate individuals to join our mission of electrifying transportation. At Tritium, you'll find a collaborative culture that values creativity, teamwork, and individual excellence. Our commitment to innovation, sustainability, and strong partnerships drives us to deliver a superior charging experience.
If you're ready to help shape the future of sustainable transportation and make a meaningful impact, explore our career opportunities. Join Tritium and be a part of the transformation in the EV charging industry.
About the role
As part of the End-of-Line team and part of the wider engineering division you will deliver software solutions that enhance the performance and functionality of our high-power charging systems, primarily in the areas of automated testing and software installation. The EOL Software Development Engineer role requires a candidate who has a deep and broad experience of working in complex Engineering programs across the functional boundaries of technical disciplines / commodity groups, in an environment with often competing deliverables, priorities, and levels of ambiguity. This position reports directly to the Manufacturing Engineering Manager at Tritium and is based in Middle Tennessee.
Key accountabilities and responsibilities include:
- Instrumental in defining and developing innovative, modular and maintainable software/firmware products
- Follow Scrum, attend and contribute in scrum events (Daily stand-ups, Sprint Review, Sprint planning and Sprint Retrospective)
- Participate as an active team member in all aspects of the software development life cycle, including scope definition, documenting, trouble shooting, testing and showcasing.
- Take requirements to design software with re-use in mind across multiple platforms and standardizing software modules where feasible
- Analyse system specification and translate system requirements to task specifications
- Support actively field issue investigation and troubleshooting activities, including site visits and remote support for customer test sessions
- Provide creative solutions when dealing with technology challenges
- Keep current with new and developing software technologies and assist in prototyping and determining the feasibility of implementing new technologies
- Collaborate with the cross functional team to deliver high quality products
- Participate in code review and validation
- Provide coaching, training and mentor of other software engineers. A well as looking for opportunities to learn from and be mentored by other as well, not just the leaders in the team but others in the team whose skill sets and knowledge in areas outside of the principle engineers strengths and area of expertise can assist both parties to grow in skill and confidence
- Support actively the selection or development of hardware platforms for control and communication systems
- Generate documentation to support testing and compliance certification activities
About you
- BS in Computer Science or Engineering
- Minimum 3 years experience in test automation
- Experience with software development, familiarity with agile development processes, and experience working through multiple software releases.
- Strong experience in Python scripting and/or application development for Linux
- Experience with shell (bash) scripting for Linux
- Experience with asynchronous programming patterns (e.g. epoll in Linux, asyncio in Python)
- IoT experience - MQTT, HTTP, TCP/IP
- Knowledge of CAN bus protocol
- Experience with Cryptography (TLS 1.2) would be beneficial, TCP/UDP, x509 certificates management and Over the Air updates
- Additional experience in firmware or software development (Embedded Linux or GUI development) for HMI/UI systems would be beneficial (QML, Qt5 for GUI development, state machine experience, QtScxml ).
- Strong familiarity with software configuration management systems and/or source code version control systems, Git (Github/BitBucket/etc)
- Strong debugging skills and ability to understand complex software products
- Experience with BitBucket Pipelines, Azure DevOps, Jenkins or other CI/CD tools
- Familiarity with Agile development processes and DevOps environments
What's on offer
Our people are our most important asset. We want to change the world for the better and we need you to do it. We invest and nurture our talent, enabling you to succeed and achieve your full potential. Other benefits include:
- Competitive salary package
- A diverse range of learning opportunities and career paths
- Career growth and development
- Comprehensive benefit package to include medical/dental/vision
- Access to free mental health
- Family coverage available
- High-deductible health plan option
- Contributions to health savings account
- Healthcare savings and flexible spending account options available
- 401k with company match
- On-site parking
- EV Charging onsite
Salary:
USD $90000 - $110000 annually
Tritium is an equal opportunity employer.