Java Software Developer

Company: CV-Library
Job type: Full-time
Salary:
45,000 - 65,000 GBP/Year

Role purpose

The Software Developer works with Product Owners, Business Analysts and business users to develop software solutions based on business need across the Company.

As an advocate for agile development frameworks, Developers will help create a positive working relationship within Scrum teams and play their part in ensuring that the solutions delivered are fit for purpose and delivered on time.

Working in collaboration with a Technical Architect, other developers and the rest of IT, the quality of solutions will be at the forefront of mind and IT development policies and standards adhered to at all times.

You will help create a positive working relationship within the teams you are involved with and the wider technology department, to ensure the solutions delivered are fit for purpose and delivered on time and working collaboratively.

Our client is looking for someone who will be involved in the development of software solutions based on business need, they will need to be proactive and have a can-do mind-set, who will be able to come in and hit the ground running.

The Software development is based around building containerised microservices and leveraging cloud technologies to develop a set of highly available services that provide unparalleled benefit to the business.

The role holder will be confident in their skills and ability, operating mostly within familiar areas and boundaries of their role. They will have ownership for achieving and improving personal performance, acting on opportunities in their role and seeking new opportunities to develop. A focus will be on achieving personal goals/daily targets and having a personal impact on the goals set for the wider team. They will be open to personal feedback and work on leveraging strengths in their development areas whilst building positive relationships with team members and stakeholders, showing an awareness of different perspectives and styles. They will be confident to speak up in meetings and state their opinions, spotting opportunities and escalating issues to improve their own performance and processes and costs at team level. They will follow well defined priorities within a given framework and manage with a small degree of ambiguity and will have a clear understanding of how their role fits into the bigger picture and show curiosity to understand the bigger picture.

Role responsibilities & accountabilities:

* Contributing to daily stand up meetings and other agile ceremonies.

* Providing accurate estimates for user stories and backlog items.

* Translating user stories and backlog items into logical units of work.

* Evaluating technical feasibility.

* Translating requirements and acceptance criteria into technical solutions.

* Producing well structured, efficient and reliable code within the agreed timescales, using the technologies selected for the solution.

* Ensuring that code is well tested using TDD where appropriate.

* Providing prompt fixes to defects identified, ensuring that these fixes are well tested before they are released.

* Managing code using the code management tool of choice, ensuring that changes are checked out/in in a timely manner and maintaining an awareness of any potential impact on other Developers in the team.

* Contributing to the overall quality of code delivered by the Development Team by performing code reviews for other Developers.

* Maintaining an interest in the latest development tools and technologies and being prepared to use these in a fast paced environment.

* Completing all necessary documentation to support the solutions delivered, ensuring this is accurate, concise and easy to use.

* Applying development best practices and adhering to IT policies and standards.

* Delivering solutions that are fit for purpose.

* Making sure that projects are effectively handed over to the operational teams and that the expected deliverable business values are successfully demonstrated.

* Actively participating in the Development community, sharing skills and knowledge and bringing in best practice.

* Communicating complex ideas and concepts simply and elegantly and with impact to create understanding.

* Contributing to the delivery of strategy, recognising strategic imperatives and the impacts on own area of work.

Key experience:

Experience of end-to-end development of high-quality software applications on a range of medium to large scale projects.

Proven experience in a test first software development approach.

Experience in developing across different applications.

Competence in delivering software solutions using the following technology stack (Java, Spring Framework, Spring Boot, Spring Security, Spring Data JPA, PL/SQL).

Experience of working in agile delivery teams.

Experience of working with project collaboration tools such as JIRA, Confluence,

Interest in new tools and technology and their application in a business environment.

Experience of Continuous Delivery, ideally using tools such as Octopus or GitHub Actions

Experience of successfully applying modern software architectural principles and design patterns.

Experience of managing code using a source code management tool such as GitHub.

Experience of working with IT teams and business users in a customer focused environment.

JUnit or equivalent testing framework

Understanding of object-oriented development techniques and theories

Understanding of software design patterns

Effectively communicate technical subjects to team members.

Highly proficient in verbal and written English.

Technical Skills

Required

Java

Spring Framework

Spring Boot

Spring Security

Spring Data JPA

JUnit

Desirable

Mockito

Gradle

Maven

PL/SQL

Docker

JSON:API

Postman

Azure (APIM, Table Storage, Cosmos DB)

AWS Cognito

Continuous Delivery tools such as Octopus, GitHub Actions

Working within Jira for requirements

Apply for this job