Helix Leisure logo

Helix Leisure

Embedded Software Engineer

Development – Perth, Western Australia
Department Development
Employment Type Full-Time

Helix Leisure is a leading global supplier to the Out of Home Entertainment industry – locations outside the home people visit for entertainment and recreation. Across our core brands – Embed (revenue management systems, e-commerce), Booking Boss (Tours, Attractions and Activities), LAI Games (arcade games), The Locker Network (operating electronic lockers) and Matahari Leisure (equipment manufacturing) we service over 2,500 locations around the globe. Helix operates full service offices in Singapore, Perth, Sydney, Dallas, Dubai and Jakarta. The group enables our customers to create rich experiences for their visitors and guests through both technology and service.

The Embedded Software Engineer will work within an agile team of hardware and software developers to engineer embedded Linux products based around a range of proprietary devices. This role will be based in our Perth office.

Key Responsibilities:

  • Implement and debug boot loader & upgrader: Implement, enhance and debug the boot loader or remote upgrader code
  • Implement drivers and support HW engineer: Make any changes to the kernel device drivers (or code new drivers) to fully implement the driver abstraction layer required to support the Linux OS and the application identified for the product.
  • Implement Changes/Additions to firmware: Code any changes or extensions to the firmware identified in the software design document. Perform engineering phase testing
  • Implement Changes/Additions to application software: Code any changes or extensions to the API, Linux products where identified in the software design document. Perform engineering phase testing
  • Implement Changes/Additions to Applications (UI & simulator): Develop new applications or modify existing applications to fulfil all customer requirements. Perform engineering tests
  • Implement Changes/Additions to 3rd party libraries: Code any changes or extensions or modify 3rd party support libraries and application to fulfil all customer requirements and features. Perform engineering tests
  • Implement Changes/Fixes: Fix problems identified during the qualification phase
  • Develop Software Design:  detail software design based on the architectural design
  • Assist in planning product timescales, estimating time for each issue to enable accurate sprint planning
  • Conduct Code Reviews: Peer review of code developed by the software team members. Regular reviews are scheduled where all code is reviewed by the whole team
  • Software Design Reviews: The software architectural design is reviewed by the full software development team with a view to improve re-usability and to address historical problems and to avoid any obvious system design errors
  • Software Testing: Cooperate with other team members to determine appropriate tests to be performed as part of the testing
  • Generate Release and Configure: Software release is accompanied by a software release detailing the SW version number, changes since the previous release and reference to the appropriate qualification test report

Required Skills and Experience:

  • Tertiary degree or equivalent experience
  • Experience in maintaining embedded Linux build systems, QT development and boot loader modifying
  • Extensive knowledge of Embedded Linux and must be able to demonstrate the ability to build the OS and develop applications
  • A good team player, high level of communication/ interpersonal skills and the ability to work within schedule
  • Solid understanding of both micro controller and computer operating systems architecture
  • Knowledge of build automation, continuous integration, unit test, change management and configuration management
  • Knowledge and working with VCS systems such as GIT
  • Understanding of various scripting languages to an intermediate level
  • Embedded Linux development background (5 years’ experience) with a commercial product focus
  • Advanced skills in C/C++ software programming and shell scripting
  • Experience in embedded Linux drivers e.g: Wi-Fi, USB, NFC
  • Experience in debugging at the kernel level
  • (Desired) Knowledge of serial, Ethernet and wireless communications
  • (Desired) Knowledge of card technologies such as Mag-stripe, smart type contact and contactless cards such as Milfare and RFID
  • (Desired) Experience in working in an Agile team development environment and tools such as JIRA and Confluence and understanding of SDLS and test-driven development process
  • Some travel may be required

Thank You
Your application was submitted successfully.
Apply for this Job
  • Location
    Perth, Western Australia
  • Department
  • Employment Type
  • Powered by