Description:
We are looking for a Lead Software Engineer to drive technical project delivery, guiding teams from concept to deployment while ensuring high-quality, scalable solutions. If you enjoy seeing your work deployed into ‘real-life’ applications, this is the perfect role for you. Not only will you directly contribute to our client deliverables, but you will have the opportunity to experiment with a range of cutting-edge techniques and deliver full-stack data science projects, from solution design through to deployment.
You'll form an integral part of our close-knit team and will have the opportunity to directly contribute to the continued success of the business. We're looking for someone with a co-operative, can-do attitude who can build high-quality data engineering solutions.
If this sounds like you, we can't wait to hear from you!
KEY RESPONSIBILITIES:
- Lead the design, development, testing, and evaluation of complex software engineering solutions for the successful delivery of multiple client projects
- Build strong client relationships and lead project-centred client interaction
- Manage and mentor engineering project teams
- Encourage innovation and continuous improvement
- Collaborate with stakeholders to understand business needs and develop technical strategies
- Build processes for extracting, cleaning and transforming data (SQL / Python)
- Oversee the delivery of high-quality code and successful project outcomes
- Line manage and provide career mentorship to other software engineers
REQUIRED SKILLS:
- Degree in a quantitative field such as engineering, mathematics, finance
- Experience of leading meetings and presenting technical concepts to stakeholders
- Experience of successfully leading complex software projects
- Experience of mentoring and managing software teams
- Experience of leading the design, development, testing, and deployment of software solutions
- Experience of leading code reviews in Python and SQL through Git, and applying other best practices to technical projects
- Experience of developing data engineering pipelines, backend services and APIs
- Experience of using SQL and databases (SQL Server, Postgres etc), as well as a cloud platform for development
- Extensive knowledge of software engineering concepts and principles with a deep understanding of emerging technologies and industry trends
- Deep expertise of at least one programming language
- Deep understanding of cloud deployment (e.g. AWS, Azure) Linux scripting (e.g. bash)
- Deep understanding of data analysis methodologies and best practices
- A holistic understanding of the software development process, from design through to deployment, and associated project management and risks
- Advanced Docker with deep understanding of Docker storage and Volumes, linux permissions
- Understanding of Python advanced concepts including Object Oriented Programming (OOP), Concurrency, decorators, recursion
- Excellent communication skills through written reports and presentations
- Ability to review others' code
- Ability to support bid and proposal writing
- Ability to effectively line manage and mentor