Description
The candidate must be SC Cleared or willing to under go SC Clearance
Building browser-based products to serve a variety of user needs;
Implementing toolkits & REST APIs for internal and external use.
Maintaining and iterating a robust automated test suite to support a Continuous Deployment environment.
Being involved in the wider web development community, identifying good practices we can adopt and sharing our experiences.
Sharing knowledge of tools and techniques with the wider team, both developers and non-developers.
Take responsibility for ensuring code quality on projects you work on.
Set an example of and encourage positive and constructive communication both within the team and when communicating with other teams.
Have a broad knowledge of the core technologies involved in building web applications and strong experience of assessing and selecting tools or approaches.
Identify the main issues in complex problems, clarify understanding or stakeholder expectations, to seek best option.
Knowledge, Skills & Experience
Essential
5+ Years acting as a senior developer in a strong Object Orientated PHP environment.
Experience building Server Side web applications and detailed knowledge of PHP.
Experience with Zend 2
Experience with PHPUnit tests and mocking objects
Experience with Docker
Experience of Doctrine 2 and Doctrine migrations.
Knowledge of relational databases systems (particularly PostgreSQL)
Outstanding ability to develop efficient, highly optimised and clear code.
Understanding of and experience with a range of approaches to testing application code and systems for behaviour and performance.
Working within an agile environment.
Experience working on technical projects within a team.
Working knowledge of unix-like operating systems such as Linux and/or Mac OS X
Knowledge of the Git version control system
Ability to quickly research and learn new programming tools and techniques
Experience of Continuous integration (preferably with Jenkins)
Desirable
Mentor and train other developers in a non-line management capacity
An ability to communicate technical concepts to a non-technical audience.
Experience of BDD and automated user acceptance testing with Behat.
Experience of Docker used for local development and staging environment.
Act as a tech lead on complex projects, providing support for product and delivery management and pragmatically weighing the complexities involved against the need to act
Experience of mentoring or helping colleagues optimise their code
System administration and configuration management skills
Experience presenting work at user groups and conferences
Understanding of the use of Responsive Web Design
Experience of handling large data sets and scaling their handling and storage
Experience with JMS serialiser library