We are looking for a Java Full Stack Developer with extensive knowledge of both the finance industry and the technologies required to deliver effective, modern software solutions.
This role is targeted for is founded on the Java technology stack, Web Frameworks (Struts, Tapestry, AngularJS) alongside many supporting internal and external services.
- Develop software following industry best practices
- Ensure, as part of the project team, that software has been unit tested, peer reviewed and meets the architectural principles of the application.
- Author unit tests and work collaboratively to test that software meets acceptance criteria.
- Work collaboratively with product owners, architecture, design and infrastructure teams to meet client requirements.
- Participate in planning, retrospective, review sessions and daily stand-ups.
- Encourage the continuous improvement of the team.
The ideal candidate will have the following attributes:
- Availability to travel 4-6 weeks in the UK for knowledge transfer
- Experience as a Java full stack developer.
- Experience of developing in Eclipse (or similar).
- Excellent knowledge of Java web technologies including MVC frameworks (Struts, Tapestry, or AngularJS preferred).
- Practical knowledge and experience of developing SOAP Web Services (JiBX preferred).
- Practical knowledge and experience of developing REST APIs using JSON (Swagger preferred).
- Experience of multi-tier service based architectures.
- Working knowledge of securing web applications and OWASP.
- Good working knowledge of JDBC and Oracle database.
- Understand performance and tuning of applications including within database.
- Understanding of authentication and authorisation methods.
- Experience of working within waterfall and agile SDLC processes, including TDD/BDD.
- Practical knowledge and experience of unit testing, mocking or faking frameworks.
- Experience of working within Windows and UNIX/Linux operating systems.
- Finance sector experience would be preferred and extremely advantageous.
- Understanding of skills, tools and patterns for building and releasing code.
- Ability to manage and prioritize multiple development activities simultaneously.
- Must be flexible, independent and self-motivated.