Senior PHP (Laravel) Developer - Birmingham Clinical Trials Unit - 106891 - Grade 7
Role details
Job location
Tech stack
Job description
The primary responsibility of this role is to contribute to the design, development, delivery, and maintenance of web applications that support clinical research activities. Utilizing a tech stack that includes PHP, Laravel, VueJS, and MySQL, the successful candidate will be expected to take on a senior role within the team, working independently on the delivery of new systems, leading on the decision-making processes, and being proactive in identifying opportunities to improve the team's contribution to the delivery of clinical trials. This role is an excellent opportunity for a mid-level PHP developer to step in to a senior role with the opportunity to work on innovative software that contributes to meaningful projects.
In this position, you will be involved in all phases of the software development lifecycle, including requirements gathering, design, coding, testing, and deployment. You will be expected to write clean, efficient code and lead on code reviews, ensuring adherence to best practices and coding standards. With a strong emphasis on test-driven development (TDD), you will develop robust and reliable code, ensuring it meets the highest quality standards. You will also be required to follow standard operating procedures (SOPs) meticulously to maintain consistency and compliance with regulatory requirements. This is an opportunity to gain experience of developing code in a highly regulated environment where thorough testing and documentation is paramount.
The ideal candidate will possess some leadership and project management skills, excellent problem-solving abilities, excellent communication skills, and willingness to grow and develop the team around them. You will collaborate with team members to create and implement comprehensive test plans and contribute to the ongoing improvement of our development processes. This role offers the unique chance to make a significant impact on clinical research through the development of advanced web applications, ensuring that the software used in our trials is both reliable and effective.
Main Duties
- Lead on the development of new clinical trial web applications using the PHP Laravel framework, database technologies and frontend technologies as required, ensuring the accuracy and integrity of the built systems.
- Contribute to the ongoing maintenance and enhancement of existing applications, ensuring the software is up to date and compliant with industry standards and latest best practices in data security.
- Collaborate with stakeholders (Chief Investigators, Trial Leads and Statisticians) to establish the scope, scale and timelines for individual projects.
- Assist in the analysis and interpretation of stakeholder requirements, helping ensure the systems developed meet the needs of individual projects.
- Write clean, maintainable, and efficient code following best practices and coding standards. Lead on code reviews for junior team members to ensure high-quality code and mentor others on best practices.
- Create and maintain detailed documentation related to processes, code changes, and updates, ensuring clarity and comprehensiveness for team members and stakeholders.
- Deputize for the Lead Software Engineer when required and take a lead role in providing quality assurance and adherence to internal and external standard operating procedures.
- Proactively identify areas for process improvement and help lead the team in implementing changes that enhance the efficiency and effectiveness of the development workflow.
- Contribute to programming team training and development through presenting seminars, delivering small group sessions or individual training as required.
- Stay updated with the latest industry trends, technologies, and best practices; actively contribute to the knowledge-sharing culture within the team.
- Undertake projects to explore and leverage new techniques and technologies to improve the service provided by the programming team.
- Undertaking such other duties as may be required from time to time in furtherance of the work of the programming team.
- Supporting equality and values diversity, moderates own behaviour to avoid unfair discriminatory impact or bias on others.
- Support the delivery of clinical research in accordance with Good Clinical Practice (GCP), the Declaration of Helsinki, applicable legislation (including, but not limited to, the Medicines for Human Use Clinical Trials Regulations, Data Protection Act 1998, Human Tissue Act), the Research Governance Framework for Health and Social Care, Caldicott principals, and applicable NHS Trust and University policies and procedures, (including, but not limited to the University's Data Protection Policy, Information Security Policy and Code of Practice for Research) in order to protect the research subject and the quality of each study., The role will take responsibility for the delivery of software for the accurate, robust and safe delivery of clinical trials, and as such will work collaboratively with other senior colleagues and oversee and review the work of less experienced team members, ensuring the final product is product is documented and validated according to the team's SOPs and operating procedures.
The role will also assist in the recruiting process: designing and marking tests for candidates and sitting on interview panels; and will take a lead role in staff training and presenting material to individuals as well as groups internal and potentially external to the Unit.
There will be no direct financial responsibility associated with this role.
Planning and Organising
The role will take responsibility for the delivery of software for the accurate, robust and safe delivery of clinical trials, and as such will work collaboratively with other senior colleagues and oversee and review the work of less experienced team members, ensuring the final product is product is documented and validated according to the team's SOPs and operating procedures.
The role will also assist in the recruiting process: designing and marking tests for candidates and sitting on interview panels; and will take a lead role in staff training and presenting material to individuals as well as groups internal and potentially external to the Unit.
There will be no direct financial responsibility associated with this role.
Problem Solving and decision making
Senior programmers in the team have significant influence on the development strategies and technologies used for individual projects and across the wider team. Senior team members are also expected to review trial protocols and case report forms, and to make recommendations regarding logical process flow and design of the data collection tools.
Internal and External relationships
The post holder will need to liaise with a range of staff across the unit, colleagues in the programming team and with the programming team lead to ensure the delivery of projects.
Requirements
Do you have experience in Vue.js?, * A degree in computer science, related discipline or equivalent professional qualifications.
- Substantial PHP and Laravel framework knowledge, with extensive professional experience and being knowledgeable about advanced Laravel features (queues, middleware, job, caching, etc) and package development.
- Experience of complex application architecture, RESTful APIs and proven experience of systems development and maintenance.
- Demonstratable project management skills, being able to assess scale, scope, timelines and the ability to manage multiple projects simultaneously.
- Strong expertise in Test Driven Development; demonstrable by comprehensive use of PHPUnit and/or Pest, use of different testing strategies (Unit, Integration, E2E) and other testing tools.
- Strong understanding of web application security principles, experience with implementing security measures, secure authentication practices, and data encryption.
- Proficient with front-end technologies such as HTML5, CSS3, Tailwind CSS, JavaScript and frameworks like VueJS and React.
- Expert and demonstratable experience with relational databases, particularly MySQL/MariaDB.
- Advanced knowledge of version control systems, specifically Git, demonstrable by knowing how to: branch and merge, rebase, tag, along with version control workflows, as a minimum.
- Proficient with Docker (basic commands, creating docker files) and experience in deploying and maintaining PHP Laravel based applications.
- Proficient in using Linux based systems, e.g., CLI proficiency, text file management, package management.
- Good communication skills, with the ability to articulate complex technical concepts to non-technical stakeholders.
- Demonstrable ability to assist other team members and contribute to a collaborative team environment.
- Knowledge of other programming languages like Python, Java or Swift a bonus.
- Experience of working in a regulatory environment and/or within clinical trials research desirable.
- A proactive approach to learning and ability to stay updated with industry trends.