My client is a Large Financial Service Firm and they are on the market looking for a Software Engineering Manager to help build and design an Automated Fraud System which incorporates Data Science, Cloud and Distributed Programming.
- Be an expert in agile software delivery, coaching others and introducing good practice such as test-driven development, continuous integration/delivery, pair programming etc.
- Line-manage software engineers, supporting them to develop their careers and coaching them to enhance their technical, agile and soft skills.
- Design, develop and test software solutions a multi-disciplinary agile team
- Influence stakeholders (product owners, business analysts) to shape requirements that you can deliver successfully and also coordinate technical stakeholders (solution architects, security architects, infrastructure, service management) to shape maintainable, high-performing, reliable, secure and cost-effective solutions
- Work across disciplines (e.g. testing, business analysis, DevOps) and develop skills outside your core specialism
- Continually improve our products, solutions, tools and processes
- Understand the total cost of ownership of your solutions (including licenses, support, infrastructure etc.) and innovate to reduce it.
- Identify and actively manage risks within your solutions.
- Expert-level proficiency in one of the programming languages like Java, Python.
- Hands-on experience in designing and developing distributed, microservice-style, cloud native applications using Core Java 8, Spring/Spring Boot, distributed messaging (Kafka, AWS Kinesis), caching (Elastic, Redis), Restful APIs.
- Strong Knowledge of computer science fundamentals such as algorithms, data structures, object oriented analysis and design.
- Understanding and experience of AWS cloud storage and computing platform (especially S3, Athena, Redshift, Glacier, EMR, EC2).
- Knowledge of software best practices, like Test-Driven Development (TDD) and Continuous Integration (CI)/Continuous Development (CD) as well as DevOps principles, tools (Docker, Kubernetes, etc.), and the intersection with cloud architecture.
- Experience of using testing frameworks and tools like JUnit, Mockito, Fitness, Cucumber, etc.
- Familiarity with Jira, Confluence, Git, Jenkins.