Technical Team Lead Role
Our client is looking for a hands-on technical team lead to help them manage their growing team of software engineers. The main purpose of this role is to lead an agile team of software engineers working to an agile methodology, delivering business critical projects for our customers whilst maintaining good team morale. You will be the contact point for all developers assigned to your team, so your communication and people skills need to be excellent. If you are passionate about leading and coaching software engineers to produce high-quality code, then you are the right person for this job.
This role will provide a great mix of technical leadership and people leadership responsibilities and would be an ideal next step for a career in either management or architecture.
* Lead, inspire and motivate a small team of software engineers in the creation of high-quality software within agreed project deadlines.
* Help maintain high standards of code quality within the team by establishing and mentoring around good development practices and habits.
* Train and integrate new team members and proactively support the continued development of existing team members.
* Play a key role in providing realistic estimates of development effort to assist in team planning.
* Assist in the documentation of user requirements and hands-on development of critical user stories.
* Ensure high-level solution designs are reviewed/approved by our architect and meet our design standards.
* Assume a high level of ownership of all code developed by members of the team.
* Participate in and drive peer-reviews of solution designs and related code.
* Experience in any of the following areas would be an advantage; Mobile, Augmented Reality (HoloLens), Virtual Reality, IoT, Artificial Intelligence / Machine Learning, Data Analytics and Data Warehousing.
* Strong experience with object-oriented design and implementation techniques such as Test Driven development, Enterprise implementation patterns, SOLID principles.
* Comprehensive understanding of object-oriented and service-oriented application development techniques and theories.
* Experience with source control management systems and continuous integration/delivery environments.
* Extensive experience with debugging, performance profiling and application optimization.
* Experience with agile development methodologies (Scrum, Kanban) and automated testing.
* Database design and implementation on both relational and non-relational platforms.
* Ability to solve complex problems and participate in continuous improvement practices.
* Previous experience leading a team of software engineers including performance, development and disciplinary issues would be a huge plus but not essential.
* Excellent written and verbal communication skills in English as this will be a customer-facing role.