Desired Skills and Experience
- Analysis, architecture, design and implementation of both technical and client-facing features
- Leading and mentoring team to meet strategic goals
- Contributing to the team through knowledge-sharing and skills transfer, conducting peer reviews, and taking on SCRUM roles (which rotate among the team).
- Assisting the Head of Product Development to manage the team, including recruitment and performance reviews
- Adhering to our coding standards, keeping up with current practices
- Documentation of code and systems
- Management of off-shore resources (this is a shared responsibility of the team)
- Refactoring legacy code into modern patterns
- Bug investigation and resolution
- Keeping the test build passing, (in co-ordination with other developers)
- Assistance in supporting client implementations
- Assistance in pro-actively monitoring and improving our systems
- Programming – OOA&D (in a major OO language, not necessarily PHP)
- Database – RDBMS, SQL / MySQL, Eloquent
- Web development - HTML, CSS, SASS, Javascript, JQuery, Bootstrap
- Debugging and tracing
- Testing - xUnit, eg. PHPUnit, Bamboo, Selenium
- Architectural and design patterns: MVC, DI, IoC, REST
- Working within frameworks: Laravel / Illuminate
- Development tools: Git, Git Flow, IDE (eg. Eclipse, IntelliJ, PHPStorm), Composer, JIRA, Bitbucket, Gulp
- Cloud: AWS, EC2, RDS, SES
- Dev Ops: Automated Deployment, Release Management, APM
- Process – Agile, eg. Scrum
- Management: Experience leading small teams
- Database administration - esp. MySQL
- System administration - esp. Linux, Apache, bash, crons
- Message queues: AMQP, RabbitMQ
- LAMP stack/Win administration
- Electronics Diagnosis / Hardware / Comms protocols / Telephony
- Mapping / geolocation
- Telematics, automotive, robotics
- A computer science or software engineering degree (highly regarded but not required)
- 7-12+ years of commercial experience in OOA&D and development, including at least 3 years in a senior position
- A disciplined approach to development and testing
- A desire to investigate, fix and learn!