Senior Software Engineer

Cubic Technologies Singapore Pte Ltd Date Posted: 29-Jan-2018

Save Job
Job Nature:
Permanent
Position Level:
Experienced
Qualification:
Bachelor's / Honours, Masters / PhD

Job Description

Job Summary:

 

The Senior Software Engineer will be responsible for the daily function, quality and delivery responsibilities of locally based software engineers and encompass some line management duties.

 

The Senior Software Engineer will be the focal point for technical advisory for the software engineers.  The Senior Software Engineer will need to be proficient in the full development lifecycle in order to support the team and participate in requirements analysis and definition, execution of design and build with high productivity, test facilitation and third-line operational support. 

 

At the beginning of project, you will join the Automatic Fare Collection equipment design team and participate in hardware and software design, design documentation submission, development, prototyping, configuration, and testing of the Automatic Fare Collection equipment in the US.  On-the-job training will be provided in US to learn QNX operating system for the design and integration of electro-mechanical control hardware and software used in Fare Collection equipment.   

After on-the-job training in the US, you will return to Singapore working on the projects that you would be assigned to and under the supervision of the NSW Engineering Team based in Sydney, Australia. 

 

For the 1st year of the project you will be required to travel to the US and stay for periods of up to 90 days each time.

 

Essential Job Duties and Responsibilities:

 

  • Some direct line management of 1 or 2 software engineers; setting individual goals, providing employee feedback, aligning individual activities to project delivery plans, identifying conflict, addressing issues affecting productivity
  • Co-ordination of software development activities including production deployment by ensuring adherence to the Cubic software processes, meeting documentation standards, conducting sprint planning, stand-ups, design reviews, demos and retrospectives   always an eye on continuous improvement
  • Development and maintenance of software components, unit tests, driver level development using the provided development tools and following the standard Cubic development processes
  • Helping to identify and remove blocks to software development through positive interactions with test teams, other team leads and managers
  • Facilitate maintenance of design governance in interfaces, software components and data model designs, leading formal or ad-hoc design reviews where necessary.  In times where conflict arises, help mediate outcomes
  • Appropriately escalating unresolvable issues to engineering management
  • Working with PE to close out projects and generally working with the team to remove technical debt
  • Work with external/internal clients or consultants, architects, system engineers, carefully managing requirements, expectations and delivery of agreed outcomes
  • Coordinating task estimation for feeding into cost models and project schedules
  • Highly proactive identification and assignment of operational issues and support tickets and help in resolving them

 

General Duties and Responsibilities:

  • Compliance with Cubic’s Quality Management System
  • Compliance with Cubic Occupational Health, Safety and Environment policies and procedures
  • Compliance with security in accordance with established policies and procedures of the Organization  and/or the Authority
  • Any other duties as and when  assigned

 

 

Minimum Job Requirements:

 

  • Bachelor’s Degree or equivalent in Electrical Engineering, Computer Science or related technical discipline such as Science or Engineering
  • Broad aptitude for coordinating both people and technical activities
  • Minimum of 5 years software development experience of embedded firmware design and development experience in C/C++ language in structured development environments (waterfall and agile)
  • Minimum 3 years relevant experience in supporting IT, designing electro-mechanical control equipment and peripherals
  • Some previous experience in  designing and integrating software used in electro-mechanical control equipment and peripheral such as access control door and / or payment accepting module
  • Possess knowledge and experience on embedded system board level design and development, such as bootloader / BIOS, HAL, device driver and test program development
  • Experience with BSP development on different microprocessors (such as ARM / x86 with single and multi cores) and related to peripheral technologies (PCIs, SPI, UART, I2C, SDIO, USB, NAND / NOR etc)
  • Sound knowledge of Unix/Linux and Windows operating systems Familiarity with common test and debugging equipment such as oscilloscopes, logic analysers and JTAG debugger / emulator
  • Ability to solve complex problems
  • Strong verbal, written communications and interpersonal skills.  Ability to interact professionally with internal and external customers, and technical and non-technical persons
  • Some experience leading teams through highly technical and cost sensitive projects
  • Experience with transport ticketing or tolling systems related hardware
  • Some QNX programming experience
  • A people-focused individual genuinely looking to maintain a healthy work culture within a cross-functional technical team
  • Loves technical challenges and contributing solutions
  • Responsible, organised, logical thought process, positive attitude, attention to details
  • Able to negotiate with PMs and stakeholders
  • Able to prioritise work effectively while managing activities across multiple projects and operational issues
  • Willing to work extended hours where required
    • Able to travel overseas and  stationed overseas up to 90 days each period.

 

 

The description provided above is not intended to be an exhaustive list of all job duties, responsibilities and requirements.  Duties, responsibilities and requirements may change over time and according to business need.

Job Summary:

 

The Senior Software Engineer will be responsible for the daily function, quality and delivery responsibilities of locally based software engineers and encompass some line management duties.

 

The Senior Software Engineer will be the focal point for technical advisory for the software engineers.  The Senior Software Engineer will need to be proficient in the full development lifecycle in order to support the team and participate in requirements analysis and definition, execution of design and build with high productivity, test facilitation and third-line operational support. 

 

At the beginning of project, you will join the Automatic Fare Collection equipment design team and participate in hardware and software design, design documentation submission, development, prototyping, configuration, and testing of the Automatic Fare Collection equipment in the US.  On-the-job training will be provided in US to learn QNX operating system for the design and integration of electro-mechanical control hardware and software used in Fare Collection equipment.   

After on-the-job training in the US, you will return to Singapore working on the projects that you would be assigned to and under the supervision of the NSW Engineering Team based in Sydney, Australia. 

 

For the 1st year of the project you will be required to travel to the US and stay for periods of up to 90 days each time.

 

Essential Job Duties and Responsibilities:

 

  • Some direct line management of 1 or 2 software engineers; setting individual goals, providing employee feedback, aligning individual activities to project delivery plans, identifying conflict, addressing issues affecting productivity
  • Co-ordination of software development activities including production deployment by ensuring adherence to the Cubic software processes, meeting documentation standards, conducting sprint planning, stand-ups, design reviews, demos and retrospectives   always an eye on continuous improvement
  • Development and maintenance of software components, unit tests, driver level development using the provided development tools and following the standard Cubic development processes
  • Helping to identify and remove blocks to software development through positive interactions with test teams, other team leads and managers
  • Facilitate maintenance of design governance in interfaces, software components and data model designs, leading formal or ad-hoc design reviews where necessary.  In times where conflict arises, help mediate outcomes
  • Appropriately escalating unresolvable issues to engineering management
  • Working with PE to close out projects and generally working with the team to remove technical debt
  • Work with external/internal clients or consultants, architects, system engineers, carefully managing requirements, expectations and delivery of agreed outcomes
  • Coordinating task estimation for feeding into cost models and project schedules
  • Highly proactive identification and assignment of operational issues and support tickets and help in resolving them

 

General Duties and Responsibilities:

  • Compliance with Cubic’s Quality Management System
  • Compliance with Cubic Occupational Health, Safety and Environment policies and procedures
  • Compliance with security in accordance with established policies and procedures of the Organization  and/or the Authority
  • Any other duties as and when  assigned

 

 

Minimum Job Requirements:

 

  • Bachelor’s Degree or equivalent in Electrical Engineering, Computer Science or related technical discipline such as Science or Engineering
  • Broad aptitude for coordinating both people and technical activities
  • Minimum of 5 years software development experience of embedded firmware design and development experience in C/C++ language in structured development environments (waterfall and agile)
  • Minimum 3 years relevant experience in supporting IT, designing electro-mechanical control equipment and peripherals
  • Some previous experience in  designing and integrating software used in electro-mechanical control equipment and peripheral such as access control door and / or payment accepting module
  • Possess knowledge and experience on embedded system board level design and development, such as bootloader / BIOS, HAL, device driver and test program development
  • Experience with BSP development on different microprocessors (such as ARM / x86 with single and multi cores) and related to peripheral technologies (PCIs, SPI, UART, I2C, SDIO, USB, NAND / NOR etc)
  • Sound knowledge of Unix/Linux and Windows operating systems Familiarity with common test and debugging equipment such as oscilloscopes, logic analysers and JTAG debugger / emulator
  • Ability to solve complex problems
  • Strong verbal, written communications and interpersonal skills.  Ability to interact professionally with internal and external customers, and technical and non-technical persons
  • Some experience leading teams through highly technical and cost sensitive projects
  • Experience with transport ticketing or tolling systems related hardware
  • Some QNX programming experience
  • A people-focused individual genuinely looking to maintain a healthy work culture within a cross-functional technical team
  • Loves technical challenges and contributing solutions
  • Responsible, organised, logical thought process, positive attitude, attention to details
  • Able to negotiate with PMs and stakeholders
  • Able to prioritise work effectively while managing activities across multiple projects and operational issues
  • Willing to work extended hours where required
    • Able to travel overseas and  stationed overseas up to 90 days each period.

 

 

The description provided above is not intended to be an exhaustive list of all job duties, responsibilities and requirements.  Duties, responsibilities and requirements may change over time and according to business need.

Company Overview

Cubic Technologies Singapore Pte Ltd
Cubic Technologies Singapore Pte Ltd
Cubic Technologies Singapore Pte. Ltd. is a subsidiary of the Cubic Corporation headquartered in USA NYSE$(3A)CUB.  Cubic provides Engineering Development together with Operations and Maintenance Support to Armed Forces for Battlefield Communications and Simulators,  Cubic operates a Singapore office responsible for supporting programmes within the Asia-Pacific Region.  Join us for an exciting career now!