Job Summary
Technical Lead Requirements:
- 8+ years software engineering experience.
- Experience using technologies and frameworks like (but not limited to) some of our most-used languages - Python, Ruby on Rails, Java, Typescript.
- Experience with modern javaScript frameworks and libraries. (NextJs, NodeJs, ReactJs)
- Demonstrated proficiency in a lead software engineering role.
- College or University degree in Computer Science or a related discipline.
- A real passion for quality, clean code and continuous improvement.
Core Competency Requirements
- Knowledge of design principles and patterns.
- Extensive experience with architectural application and infrastructure components including database systems, message queuing, caching, networking and security concepts.
- Broad familiarity with wider languages, frameworks and approaches used in delivery of high quality software, including a strong understanding of architectural concepts and cloud-based solution design.
- Experience with AWS (Lambda, EC2, S3, Cloudwatch, Kinesis, DynamoDB)
- Experience with technologies such as Git, Kubernetes, Docker, MongoDB and Kafka.
- Experience with systems integration and RESTful APIs, including API design.
- Demonstrated ability to work across organisational boundaries, to develop requirements and negotiate outcomes with stakeholders.
- Ability to translate technical requirements into design through documented processes.
- Thoughtful approach to problem identification and solutions.
- Effective communication, presentation and written skills.
- Demonstrable experience delivering scalable, secure, transactional, high-volume, distributed systems.
Preferred Competency Requirements
- Experience with Python FastAPI and Ruby on Rails applications.
- Experience with the Typescript, Javascript languages.
Experience integrating with operational tooling such as Elk, Datadog, Prometheus
- Experience with CQRS, microservices and event driven systems.
- Experience with database design and implementation.