Team Lead / Principal Developer

Reporting to: Head of Development

Scope of the role

A driven and self-motivated professional with a passion for quality and creating digital experiences that make brands more successful. With strong skills in implementation of requirements to specification, including providing assistance in producing technical documentation and briefs, developers are expected to be advocates of producing the highest quality, reliable and stable code that delivers against business objectives, both for customers and on product development programmes.

A developer team lead role involves mentoring, performance monitoring, advice, support and line managing developers, ensuring that they progress in their careers and deliver high quality outputs for Codehouse and our customers.

A developer manager will work closely with the head of development and highly qualified technical mentors in Codehouse to provide feedback and ensure the progress in their career path for developers setting technical and soft skills related objectives.

Key responsibilities:

  • Writing well designed, efficient, testable code adhering to the Codehouse and industry development best practices
  • Be security conscious of delivered code and keep up-to-date on security and data protection best practices
  • Adapt and work on various projects such as CMS lead websites, writing APIs, integrate with various 3rd party systems / APIs
  • Work in cross specialism SCRUM teams, adopt Agile practices and communicate efficiently with your peers
  • Taking ownership of tasks from the outset and ensuring accountability for delivering on time and to the highest standard and quality
  • Be a contributing member of the development teams in terms of standards/optimisation improvements, technical excellence and thought leadership

Team leadership, strategy & planning:

  • Manage direct reports, including as needed: technical recruitment, appraisals, one-to-one meetings, identifying training needs, motivating and managing the team’s performance
  • Assist in resourcing decisions considering the team objectives and the project’s technical requirements
  • With the support from the Head of Development, supervise and facilitate the smooth delivery of all projects, enhancements and support delivered by the team
  • Consistently review projects progress and individuals’ performance, advising and liaising with the other team leads when applicable
  • Efficiently manage the team workload and regularly review time-sheet reports to ensure time is logged accurately, using the company reporting system

Technical requirements

A senior developer should be proficient in the following technologies:

  • .NET Development, C#, MVC, .NET Core, Web API
  • Unit tests frameworks such as NUnit, XUnit, Moq
  • Understanding of design patterns and their applicability in real life
  • Automated build and deployment pipelines, such as Azure DevOps, Octopus, Team City, Jenkins
  • PowerShell
  • CMS exposure (Sitecore, Umbraco, Contentful, EpiServer)
  • Knowledge of cloud infrastructure and IaaS, PaaS, SaaS
  • Development tools such as Nuke, Gulp, Cake
  • Databases MSSQL, Oracle, Mongo DB

Knowledge and exposure of the following would be beneficial:

  • Infrastructure-as-Code scripting and automation tools, such as Terraform, ARM templates, Ansible
  • Microservices, Containers, Docker and Kubernetes
  • App Services, Azure Functions
  • Front-end Frameworks such as React, Vue, Angular
  • Node JS

Professional & personal requirements:

  • Good communications skills, communicating with colleagues across various departments and with technical and non-technical customer audience
  • Effectively communicate complex technical solutions to a technical/non-technical audience
  • You will have a keen interest in keeping up with the latest developments happening in the web development and the wider tech industry
  • Suggest new technologies and development practices to the development team, be involved in R&D activities in testing and trialling them
  • Oversee critical support issues and guide the team to follow the correct escalation and process to manage and resolve issues as soon as possible
  • Create a culture of promoting new ideas and highlighting opportunities within the team to present to our customers in line with the company continuous improvement strategy
  • Contribute regularly to discussions and reviews of our internal processes in order to ensure delivery optimisation and increase efficiency across the company
  • Efficiently communicate across departments and specialisms to facilitate smooth project delivery
  • Contribute actively to the maintenance of an open and honest working environment; by promoting constructive criticism, feedback, frequent transparent dialogue and, where appropriate, confidentiality

Codehouse is committed to providing equal opportunities in employment. This means that all job applicants and employees will receive equal treatment regardless of sex, marital status, sexual orientation, race, colour, religion, nationality, ethnic or national origins, or disability or age.

Please note that we are not interested in hearing from recruitment agencies in relation to this or any other advertised roles.

Do you have what it takes?