Development is the largest discipline at Endava. Our developers design, build, and release software products in multiple programming languages, frameworks, and libraries. Always collaborating with cross-functional project teams, our developers are adaptable problem-solvers with a client-oriented mindset.
As a Development Lead at Endava you will have participate in the activities of designing, building and documenting enterprise solutions including test development to ensure service delivery meets expectations. You will provide development expertise for back-end systems from design to build. You will be responsible for the work delivered by your team of 5 developers.
Responsibilities:
- Leads and mentors a team of 5 developers by offering guidance and support in their daily activities and professional development.
- Facilitates the planning, implementation, and delivery of software, ensuring that it is completed on time, following agreed requirements, and adhering to established quality standards.
- Designs, estimates, and implements technical solutions for high complexity applications.
- Combines hands-on backend development in Python (70% of time) with activities related to team leading and project delivery.
- Participates actively in all phases of the application development lifecycle.
- Collaborates with various project stakeholders to provide support for clarifying requirements, processes, architecture, and priorities.
- Recommends and promotes IT industry standards, tools, and practices (DevOps, etc.) to achieve well-engineered software products.
- Proposes improvements and escalates risks/issues related to development activities.
- Participates in the review of the work done by development team members.
- Learns and applies new technologies, practices, and tools as appropriate to the project.
- Participates in internal and external tech communities, events, etc.
- Shares experience and knowledge gained from projects.
- 6+ years of experience in software development using Python as programming language
- Strong understanding and proven experience in using OOP in Python.
- Strong familiarity with design/architectural patterns and clean code principles (e.g. SOLID, GoF, MVVM).
- Proficient in building and maintaining web applications built with Python, FastAPI, PostgreSQL and Redis.
- Experience working with map and location libraries (eg. Mapbox)
- Experience working with queues, task runners, scheduled jobs and caching
- Experience developing SaaS style applications and/or public APIs
- Practical experience in platform specific database systems and SQL.
- Good understanding of version control systems like Git or similar
- Solid experience with testing and mocking frameworks
- Familiar with common communication protocols and standards such as HTTP, REST, JSON, TCP/IP and others.
- Experience with Agile methodologies (e.g., SCRUM, KANBAN).
- Knowledge of CI/CD tools and practices
- Good knowledge and working experience AWS. Bonus points for additional knowledge of Azure or GCP
- Good problem-solving skills and analytical thinking.
- Excellent communication and teamwork abilities.
- Excellent communication skills in verbal and written English
Bonus points for:
- Experience with Event Sourcing and/or Domain Driven Design (DDD)
- Data visualization experience
- Experience building client facing data applications
- Active member of the Open Source community
- Experience in real-estate domain