Purpose of the role:
- We are seeking a Java Spring Developer to join our dynamic development team.
- As an essential member of our technology department, you will play a pivotal role in designing, developing, and maintaining Java Spring applications.
- Your expertise will contribute to the enhancement of our software solutions, ensuring they meet high-quality standards and performance benchmarks.
Accountability: Team Work
- Provide technical expertise for project and team during design and code reviews, ensuring best technical practices are applied.
- Follow Agile Development practises
- Assist development team in compliance with policies and procedures.
- Accountability: Software Solution Design
- Apply Software Engineering Practices
- Participate in Release and Iteration Planning meetings with engineers and users.
- Assist during design of the software solution
- Assist in physical and logical database design and be able to interpret design diagrams and documents.
- Understand software engineering techniques such as the use of UML (Unified Modelling Language), Software Development Lifecycle (SDLC), The Open Group Architecture Framework (TOGAF), etc.
- Be aware of software standards applicable in the organisation. This can include standards for quality, security and compliance (SAS 70)
Accountability: Software Solution Development
- Be able to successfully interpret design documentation and build the software solution according to the specified requirement.
- Develop and test technical solutions using the development tools applicable to the team he/she functions in.
- Apply software engineering best practices gained through formal education, policies and work experience, during development of software solutions.
- Solution Reviews
Provide constructive feedback for improvements after solution reviews.
Install and test latest Service packs and patches that apply to the environment
- Attend to maintenance calls from business via System Administrator, within SLA, and with minimum returns and/or bugs
Accountability: Task Time Management
- Able to interpret project and development plans and understand project roles, project goals and timelines.
- Manage time effectively during task execution to meet assigned milestones.
- Establish responsible deadlines for reporting staff and personal work plans
Accountability: General
- Communicate with team members or relevant stakeholders regarding technical design and implementation of the solution.
- Be able to use team collaboration tools such as document libraries, source control and email.
- Attend meetings to understand customer requirements, make design decisions and report on progress
- Assist with installation of hardware environments; provide guidance regarding hardware requirements to host the software solution.
Education and Experience:
- BA degree in computer science or related field
- 6 Years + hands on Java Spring Development experience, including Spring Boot
- Experience using agile methodologies
Required Skills
- JavaScript / TypeScript
- Frontend Experience (Angular / React)
- TSQL (Stored Procedures and Functions) Spring Boot
Preferred Skills:
- SQL Design and Implementation
- Experience in Cloud Computing
- Experience in team-based software development
- Strong understanding database design and SQL
- Version control experience using Git or similar tools
- Understanding of digital landscape
- Ability to work with continuous integration and delivery tools
- Ability to work within Agile Methodologies
- Ability to work both independently and collaboratively in a team environment
- Strong problem-solving skills and a proactive attitude towards challenges
- Excellent communication skills to articulate technical concepts effectively
- Any relevant certification in Java Spring development are a plus
- Experience in microservices architecture
- Knowledge of containerization (Docker) and orchestration (Kubernetes)
- Familiarity with Agile/Scrum methodologies
Desired Skills:
- Systems Analysis
- Complex Problem Solving
- Programming/configuration
- Critical Thinking
- Time Management