KEY RESPONSIBILITIES
- Guide team development efforts towards successful project delivery.
- Provide technical leadership to teammates through coaching and mentorship.
- Maintain high standards of software quality within the team by establishing good practices and habits.
- Identify and encourage areas for growth and improvement within the team.
- Collaborate with other software developers, business analysts and software architects to plan, design, develop, test, and maintain business applications built on Java technologies.
- Assist in the collection and documentation of user's requirements, development of user stories, estimates and work plans.
- Prepare reports, manuals and other documentation on the status, operation and maintenance of software.
- Design, develop, and unit test applications in accordance with established standards.
- Participate in peer-reviews of solution designs and related code.
- Package and support deployment of releases.
- Work with teammates in the migration of legacy applications to current Java technologies.
- Develop, refine, and tune integrations between applications.
- Analyze and resolve technical and application problems.
- Assess opportunities for application and process improvement and prepare documentation of rationale to share with team members and other affected parties.
- Adhere to high-quality development principles while delivering solutions on-time and on-budget. Provide third-level support to business users.
- Research and evaluate a variety of software products.
REQUIRED SKILLS & QUALIFICATIONS
Minimum Requirements 10 to 14 years’ experience as a Software Developer Prior experience in a technical leadership position
University degree in Computer Science or a related discipline
Core Competency Requirements Proficient with
- Deep hands-on expertise with SOA, Microservices, REST/SOAP Web Services, JSON/XML and containers (docker)
- Good knowledge of database concepts with working knowledge of SQL, Stored Procedures, XQuery and XML Query;
- Proficiency with at least one ORM/Persistence Framework Hibernate, JPA;
- JSF (My Faces and RichFaces), JS with modern frameworks (Angular, React);
- Ability to communicate technical concepts to non-technical users;
- Java 11+, Spring, Spring Boot 3;
- JUnit 5 and Mockito
- Extensive experience designing and developing enterprise grade software
- Experience with source control management systems and continuous integration/deployment environments
- Experience with agile development methodologies including Kanban and Scrum
- Experience with multi-threading and concurrency
- Experience with debugging, performance profiling and optimization