Job Description
Role purpose
Senior Developer is responsible for developing and maintaining user-centric products for Christian Aid’s web systems. You will work with the technical lead, leveraging your strong expertise in both front-end and back-end development to analyse complex problems and opportunities identified by stakeholders and user feedback. You will then formulate and implement a robust technical strategy to achieve our goals. This strategy will ensure that solutions meet user needs, adhere to accessibility standards, utilise efficient and advanced coding techniques, maintain brand integrity, and deliver an inspiring and engaging user experience (UX). The role involves a 70/30 split between front-end and back-end development.
Key outcomes
* Formulate technical solutions for the front-end development of the Christian Aid web systems, based on requirements provided by the Product Owner.
* Drive the development of cutting-edge front-end and back-end features, ensuring a seamless and engaging user experience across all platforms.
* Implement high-standard technical solutions to create a cohesive and consistent web experience for all end users.
* Working with the Technical Lead and supporting larger projects to ensure seamless integration between the front-end and back-end of the web systems.
* Lead initiatives to enhance user experience through innovative design and development practices, prioritising accessibility and mobile-first design principles.
* Stay updated on development best practices and Agile product development, educating the team on new enhancements and incorporating these practices into all projects.
* Engage effectively with stakeholders at all levels to provide clear technical guidance, manage expectations, and deliver insightful analysis.
* Develop and present compelling prototypes and design concepts to stakeholders, showcasing new functionalities and design enhancements.
* Maintain a high understanding of the Christian Aid brand and design principles, incorporating them into new systems/projects.
* Follow key processes, including version control, continuous integration and release strategy to a high standard.
Person specification
Applied skills/knowledge and expertise
Essential
* Advanced knowledge of software or web development.
* Extensive experience in web application development and delivery using Drupal CMS (9/10)
* Strong experience with Drupal’s architecture, APIs & custom module development.
* Substantial experience in coding using PHP.
* Proven understanding of cloud-based hosting and deployment architecture.
* Detailed understanding of continuous integration, development cycle and release strategy principles.
* Significant knowledge of GIT version control.
* Substantial knowledge of Drupal front-end development, templates and theme development, views and other modules and tools.
* Highly developed skills in HTML5, CSS and JavaScript with an understanding of JavaScript libraries and frameworks such as JQuery, React.js and Vue.js.
* Detailed understanding of mobile-first with cross-browser/device design and development.
* Significant ability to produce and communicate conceptual ideas through prototypes.
* Detailed understanding of accessibility, visual hierarchy, layout, typography and colour in web applications.
* Understanding of web-based security and best practice including data encryption, secure coding practices and vulnerability management.
Desirable
* Experience with the Shopify e-commerce platform, including integrations with email service providers
* Understanding of unit testing and test automation processes
* Experience with Drupal’s commerce platform.
* Knowledge of Microsoft Dynamix CRM and integrations with Drupal.
* Experience with Google Tag Manager and Google Analytics, including setting tags and UTM parameters.