Senior Java Developer
R500 000 to R850 000 pa (Negotiable)
A senior Java developer is expected to play a leading role in the design, development and deployment of software solutions.
They play an integral role in the delivery of quality code, and will be expected to contribute in design conversations. They are informal mentors to less experienced team members and will add value to the client projects through their technical knowledge, subject matter mastery, and technical prowess.
Skills and Experience
• 5 – 8 years of Java development working experience.
• In depth working knowledge of Java language features.
• Solid understanding of Object-oriented programming fundamentals.
• Extensive knowledge of design patterns and the ability to recognize and apply them (e.g. GOF patterns).
• Solid knowledge and practical experience of at least one RDBMS, including basic DBA functions.
• Excellent knowledge of at least one client-side technology. Needs to have detailed implementation experience as well as a solid understanding of the technology specific patterns.
• Needs to have a high level understanding of the common frameworks in the Java technology stack and needs to have detailed implementation experience in several of these frameworks.
• Must have the ability to analyse and solve complex problems in familiar and unfamiliar technology spaces, establishing the appropriate solution patterns to be followed by the technical team.
• Should be able to establish automated testing patterns within a project (i.e. unit testing, integration testing, and performance testing).
• Ability and experience with establishing Integration Patterns.
• Experience in Spring, JMS – Rabbit, Message brokering, EJB, ORM – JPA (Hibernate etc.)
• Must be a team player and able to play a leadership role within the team.
• Must provide mentorship to the more junior members of the team.
• Effective verbal and written communication within team and client.
• Flexible and able to work under pressure.