Middleware Engineer - C/C++ - Agile
Our high brow broadcasting client are seeking an experienced Middleware Engineer to join their Osterley, West London based team on an initial 3 month contract.
Design, development, debugging and integration of software modules for Digital TV STBs.
Taking direction from the architecture group and working with other members of your team you will:-
- Specify and Design - Specify the architecture of the modules, and their internal design
- Implement - integrate or develop embedded SW modules to realise the required features
- Enhance - expand the implementation to support new functionality
- Optimize - reduce the resource requirements (incl. CPU cycles) without compromising the required functionality.
- Simplify - identify opportunities for reducing the complexity of existing layers
- Refactor - Make changes to vertical slices of the implementation as a result either of changes associated with any of the above or an interface change.
- Test and Integrate - produce functional and non-functional test
- Debug and Integration
- Participate in, and lead, technical investigations through multiple software layers
- Identify defects in the design and implementation
- Raise clear and concise defect reports
- Development of complex, multi-threaded system
- Experience in designing, implementation and debugging object oriented code
- Experience of writing software in a fast moving domain
- Proven track record of delivering products that have been successful in the market
- Linux as a development and target environment
- Strong experience in C and/or C++
- Excellent problem solving skills
- Strong knowledge of building software that is reliable and maintainable
- Strong academic record demonstrating skills in Maths, Science and/or engineering
- Experience of working in an Agile development environment
- Experience of Test-Driven Development
- Knowledge of Unit Test frameworks
- Set Top Box software architecture
- Digital TV Middleware and associated broadcast protocols
- Familiarity with embedded systems
- Network stacks and protocols
- Experience of RESTful API development (HTTP/JSON)
- Experience of device driver APIs
- Experience of scripting language e.g. Python or similar
- Experience of source control (e.g. SVN, GIT) and bug tracking (e.g. JIRA)
- Degree and ideally an advanced degree in Computer Science, Electrical Engineering or similar
If this role sounds of interest please submit your CV in the first instance.