Software Development Engineer
Tritium is a Brisbane-based technology company with divisions in Los Angeles and Amsterdam whose mission is to offer energy freedom. We do this as a world-leading developer of electric vehicle charging infrastructure that enables the acceptance and growth of e-mobility. Tritium is a fast-growing global company with offices in Brisbane, Los Angeles and Amsterdam. As part of the Electrical and Software team and part of the wider engineering division you will deliver software release engineering and support for the on-board systems/platform. The Software Development Engineer role requires a candidate who has a deep and broad experience of working in complex Engineering programmes across the functional boundaries of technical disciplines / commodity groups, in an environment with often competing deliverables / priorities / levels of ambiguity. This position reports directly to the Head of Electrical & Software at TRITIUM PTY LTD and is based at Torrance LA, USA or at Amsterdam, NL.
- Instrumental in defining and developing innovative, modular and maintainable software/firmware products
- Take requirements to design software with re-use in mind across multiple platforms and standardising software modules where feasible
- 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
- Participate as an active team member in all aspects of the software development life cycle
- Collaborate with the cross functional team to deliver high quality products
- Support actively the selection or development of hardware platforms for control and communication systems
- Analyse system specification and translate system requirements to task specifications
- Generate documentation to support testing and compliance certification activities
- Develop and grow the business reputation and always act promptly to up-hold the business reputation
- Work as a team member by assisting other areas of the business when required or as directed by any member of Senior Leadership Team
- Work within ISO9001 Quality standards
- Adhere to the Tritium WHS policy and procedures
- Experience in software engineering, embedded system engineering, release engineering, and/or configuration management.
- Degree qualified in computer science, software / electronics engineering or a related technology qualification
- Strong experience in programming C/C++ for embedded systems, C++ for Linux
- Strong scripting or programming knowledges – Shell, Python, Ruby, Perl, Bash etc
- IoT experience – MQTT, HTTP, TCP/IP
- Knowledge of CAN bus protocol
- Experience with Cryptography (TLS 1.2), TCP/UDP, x509 certificates management and Over the Air updates
- Experience with RTOS (FreeRTOS)
- Of interest would be any experience in firmware or software development (Embedded Linux or GUI development) to deliver fully working HMI/UI systems. Beneficial would be experience with Embedded Linux, C++, QML, Qt for GUI development. Any state machine experience, especially QtScxml would be ideal.
- Strong familiarity with software configuration management systems and/or source code version control systems, Git (Github/BitBucket/etc)
- Experience with BitBucket Pipelines, Azure DevOps, Jenkins or other CI/CD tools
- Familiarity with Agile development processes and DevOps environments
- Stay current with state-of-the-art technologies, tools and techniques for automation, quality, and security as applied to software development
- Document designs, processes and procedures
- Analytical mind with problem-solving aptitude
- Ability to work independently
- Good communication, negotiation and project management skills
- Ability to consistently work to a high standard with minimal supervision; self-motivated
- Process and people focused
This job operates in a professional office environment.
Position Type/Expected Hours of Work
This is a full-time position, and hours of work and days are Monday through Friday, 8:30 a.m. to 5 p.m but due to the nature and seniority of the role from time to time will be required to support the business outside of these hours.
Required Education and Experience
- BSc/BA in Computer Science or a related degree
Work Authorization/Security Clearance (if applicable)
Must be eligible to work in the country of the office location.