• Full Time
  • Anywhere

Our Opportunity

The Continuous Improvement (CI) Team is a multi-discipline team of firmware, electronic and mechanical engineers dealing with all production released products. The Team proactively and reactively make improvements to those products based on customer needs, internally reported requirements and items identified from within the Team.

We are looking for a Graduate Embedded Software Engineer to assist, learn from and be supported by existing Embedded and Lead Embedded Engineers. Trusted with individual issues, or defined parts of a project owned by an experienced Engineer. Collaborating with fellow Engineers from other disciplines to problem solve, develop and document a viable solution.

As a Graduate Embedded Software Engineer , you will have the following responsibilities:

  • Development of firmware/embedded software for ITL products using a wide range of upto-date languages and tools, to ensure our devices and systems remain at the forefront of industry standards.
  • Support the creation of embedded software for a broad range of automated transaction products
  • Generate managed software releases (with utilisation of Jira) and use source control systems
  • Work with Electronic Design Engineers, identify hardware limitations and solutions
  • Collaboration with other development teams to ensure specifications are obtained, timescales are agreed and requirements are achieved
  • Supporting other members of the team, providing technical support and guidance, when required, including to customer support and DevOps teams
  • Your stretch responsibilities will include:

  • Write and / or maintain PC or mobile device tools/APIs/configuration software
  • Sole embedded software development responsibility for a product or part of it
  • Key challenges will be:

  • Designing software based on realistic timescales which is reliable and within the limitations of current systems
  • Be able to solve problems when they occur at all stages of the development cycle and testing and when they occur when in use by the customer
  • Write software to be wellstructured and robust, with careful thought to creating an end result that is free of issues (i.e. best practice sensor calibration, physical error recovery and error detection code)
  • To produce embedded software releases and release products to an agreed specification and timeframe
  • Skills & Experience required to become one of our Embedded Software Engineers :

    – Knowledge of programming languages C / C++ for embedded systems

    – Be able to write device drivers for low level systems

    – Knowledge of electronic hardware and be able to understand schematic diagrams

    – Some knowledge of high-level languages for PC application development, Linux, Android

    – Understanding of real-time operating systems

    – Basic understanding of communication standards and protocols

    Behaviours required to become one of our Graduate Embedded Software Engineers:

    – Excellent communication with supporting departments

    – Thorough information gathering to truly understand issues

    – Take ownership of the tasks and define strategy to deliver

    – Innovative problem solving and critical thinking

    Apply For This Job

    You can apply for this job externally via the button below.

    Apply for this job externally