Job purpose
We're looking for a highly skilled PHP Developer who will deliver results on time and write quality code. No ninjas, no rockstars – just someone who's serious about their work, is a team player, and never met an array they couldn't tame. Your role will be to work as part of a multidisciplinary team responsible for the full lifecycle of software development, from the initial specification to the development, testing, and launch process.
Duties and Responsibilities
- Troubleshoot, test and maintain the core product software and databases to ensure strong optimization and functionality.
- Learn the business domain and participate in the requirements gathering process.
- Contribute in all phases of the development lifecycle.
- Build innovative, well-designed, and well-architected applications in collaboration with the UX team.
- Design, develop, document, test, and debug new and existing software systems, applications and/or components.
- Participate in the agile software development life cycle, including but not limited to solutions review, validations and retrospective meetings.
- Utilise backend services, and expand our architecture.
- Refactor, optimise and improve our existing codebase.
- Use Test-Driven Development and acceptance tests to ensure feature quality.
- Engage other stakeholders around all tasks, evaluations, suggestions, schedules and technical and process issues.
- Keep abreast of new trends and best practices in web development, and share knowledge with the rest of the team.
Qualifications and Experience
- 5+ years experience as a PHP Developer
- Working knowledge of authentication and authorisation patterns
- Integrating data from multiple sources and databases
- Knowing the limitations of PHP and how to work around them
- Experience with PHP MVC frameworks (e.g. Symfony, Laravel)
- Good relational database skills (e.g. MySQL, MariaDB, PostgreSQL)
- Proven expertise in working with API services (REST and SOAP)
- Experience with Agile development practices (TDD, refactoring, continuous integration)
- Familiarity with version control systems (e.g. Git)
- Strong preference for or deep understanding of open-source solutions
Key Competencies
- Ability to work well in a fast-paced environment.
- Able to work unsupervised, or with a team as required, and to collaborate effectively with other team members and stakeholders.
- An almost unhealthy level of enthusiasm for good documentation.
- Organised, flexible, and a self-starter.