About this role
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
• Internally motivated, able to work proficiently both independently and in a team environment Strong communication skills with both internal team members and external business stakeholders Strong initiative to find ways to improve solutions, systems, and processes
Preferred Competency Requirements
• Hands-on experience with HTML5, Ajax and related frameworks (such as GWT) a plus.
• Strong database background and experience with Oracle or MS SQL Server.
• Knowledge of and implementation experience with JCE are highly desirable.
• Understanding of Web Single Sign On technologies such as SAML, WS-FED and OAUTH are highly desirable for this position.
• Experience with any product such as ADFS, PING Federate or Oracle Identity Federation Service is a plus.
• Knowledge of architectures for large-scale web/eCommerce infrastructures including clustering, high-availability, fault tolerance, etc.
• Hands on experience with BPM and SOA
Nice to have Requirements
• .NET framework
• Azure Foundation
• IAM (Identity and Access Management)
• Angular
• Apache web server
• Node.js
• Microsoft CA