• Location: England, Oxfordshire
  • Salary: £68000 - £80000 per annum + 10% bonus
  • Technology: AWS Jobs
  • Job Type: Permanent
  • Date Posted: 23rd Jul, 2019
  • Reference: JFI009_1563871144
Do you naturally take the lead within your team? Are you passionate about ensuring your team are really effective at delivering software that surpasses expectations? We are looking for a Software Engineering Lead that excels at bringing together different disciplines to form a highly productive Agile team. You will be leading a project team charged with the successful delivery of a multi-year programme using the latest enterprise technologies to deconstruct existing monoliths and deliver new business capabilities within a containerised micro-services architecture. You will be responsible for transitioning the team from externally sourced to internal staff with responsibility for the long-term success of the UI and services. You will ensure the best Agile techniques are blended with sound engineering practices to enable frequent and reliable production deliveries through the latest CI/CD pipeline. This is a hands-on roll where you will be writing code as much as leading and shaping the team.

Experience and Education

* 7+ years of Software Engineering experience
* BS Engineering/Computer Science or equivalent experience required

Key Responsibilities

* Take a leadership role within a Scrum team, acting either as, or alongside, the Scrum Master to ensure the team is both fully supported and following appropriate Agile methodologies
* Liaise and collaborate effectively with stakeholders outside the team, reporting team progress / forecasts and escalating blockers to Development Manager and/or Project Manager
* Ensure the team have clear understanding and agreement on team engineering processes (coding best practice, reviews etc.) and Agile processes and ceremonies, and that these are being followed
* Ensure requirements are fit for purpose and detailed design is aligned with solution design, ensuring long term maintenance and support are key design considerations
* Take responsibility for ensuring team sprint commitments are met and delivery is planned effectively, reporting status to project team
* Act as initial escalation point for the team, co-ordinating additional expertise and support as required
* Resolve complex technical issues, collaborating with team members and domain experts to identify effective solutions
* Take ownership of live support issues ensuring they receive the appropriate level of scrutiny and attention, and that the integrity of the live service is a primary team concern
* Mentor and/or train entry-level software engineers, ensuring they are knowledgeable in critical aspects of their roles
* Keep abreast of new technology developments
* Design and work with complex data models
* Carry out management responsibilities including: interviewing, hiring, and training employees; planning, assigning, and directing work; appraising performance; rewarding and disciplining employees; and addressing complaints and resolving problems
* Ensure all staff are provided with the training and resources needed to perform their jobs to the most outstanding degree possible. Ensure all staff are provided with frequent feedback and coaching in order to meet and exceed individual and team performance goals consistently
* Manage and encourage new ideas from staff to foster improvements through innovation
* Empower the staff to be accountable and responsible for their own actions and decisions
* All other duties as assigned

Technical Skills

* Advanced knowledge and practical experience of Agile software development methodologies (Scrum and/or Kanban)
* Experience of acting as a Scrum Master for a cross functional team, effectively managing a backlog, providing estimations (time and/or story points), reporting burn down and removing impediments
* Strong knowledge of software engineering best practices especially in relation to developing code to be managed through CI/CD pipelines
* Strong hands-on experience of working with the following or similar technologies:

* Java 8
* Spring Boot / Spring Cloud
* Experience with services / APIs and microservices architecture (REST/Json, Swagger)
* Javascript Frameworks - React or other relevant experience e.g. Angular 1, 2
* MongoDB or experience of other NoSQL databases
* AWS (EC2, S3, RDS, IAM)
* CI / CD (Jenkins, Spinnaker)
* TDD / BDD Testing frameworks (JUnit, Selenium, Gherkin / Cucumber and a mocking framework)
* Familiar with HTML, JS and CSS
* Jira, Confluence, Git

* Any familiarity with the following would be advantageous:

* Containers (e.g. Docker) and any container platform technology (e.g. Kubernetes, ECS etc.)
* Load balancing and service discovery across micro-services
* Deconstructing monoliths into micro-services
* Effective monitoring, alerting and visualisation (Kibana, Elasticsearch)

* Ability to partner and lead internal and external technology resources in solving complex business needs
* Experience with different resource models such as Managed Services and/or Staff Augmentation
* Ability to design and work with complex data models
* Strong skills in setting, communicating, implementing, and achieving business objectives and goals through the direct management of others
* Strong organisation/project planning, time management, and change management skills, and strong delegation skills involving prioritising deliverables and managing deliveries of various size and complexity
* Strong problem-solving experience involving leading teams in identifying, researching, and coordinating the resources necessary to effectively troubleshoot/diagnose complex project issues; prior success extracting/translating findings into alternatives/solutions; and identifying risks/impacts and schedule adjustments to facilitate management decision-making
* Strong communication (verbal and written) skills. Strong interpersonal, communication, and presentation skills applicable to a wide audience including senior and executive management, end users, etc., including presenting information in a concise and effective manner to clients, management, and various departments using assorted communication mediums

Similar Jobs

Senior Java Developer
England, Oxfordshire

Lead Java Developer
England, Oxfordshire

Senior Java Developer
England, Oxfordshire

Lead Java Developer
England, Oxfordshire

Head of Data Analytics
England, Oxfordshire