The role is to develop software for Samsung’s range of wireless chips.
The software is written in the “C” programming language and occasionally in assembler and runs in a resource constrained embedded real time environment. The role involves helping to develop software through the entire software lifecycle including design, implementation, test, debug and support and may require travelling to customer sites to provide hands-on debug and support of issues. You will be taking ownership of a major component of a project and being responsible for the delivery of the fully tested component to a timescale agreed with the Programme Manager. This role may require you to mentor more junior members of the team.
- Contribute to requirements capture
- Task definition and work breakdown including time estimation
- Design documentation
- Develop and test software of major scale and complexity to agreed timescales
- Deliver high quality software in line with the department’s processes
- Maintenance of software including defect investigation
- Contribute towards the continuous development of the department’s processes
- Conduct peer software reviews
- Create relevant documentation following the department’s processes Assist/Lead external inter-operability and compliance test events
- Develop tests and scripts to exercise solutions being implemented Support the development at customer sites.
- This may involve occasional foreign travel
- Degree (or equivalent qualification/ experience) in maths/science/software/electronics
- Excellent proven understanding of ‘C’ programming languages
- Experience in development and debug of Linux Kernel code
- Experience in writing code for resource constrained environments where MIPS and memory have to be utilised carefully
- Experience of programming and debugging using ARM processors/tools
- Excellent understanding of software design techniques
- Good understanding of debug techniques and tools
- Understanding of software architecture
- Good understanding of configuration management
- Effective team player
- Good communicator
- Excellent problem solving ability and tenacity in finding root cause for complex issues
- Knowledge of a scripting language such as Perl or Python
- Understanding of processor architectures and peripherals
- Experience of embedded multi-processor systems and inter-processor communication techniques
- Experience in development and debug of Embedded Linux Kernel code
- Experience of developing embedded protocol software for wireless communications – ideally operating in an area close to the hardware
Samsung Cambridge is an equal opportunities employer and positively encourages applications from suitably qualified and eligible candidates regardless of sex, race, disability, age, sexual orientation, marriage or civil partnership, pregnancy or maternity, religion or belief.