Job Summary
We are seeking an experienced Lead Full Stack Developer (Struts Specialist) to drive the modernization of a mission-critical enterprise application. The application currently operates on a legacy technology stack consisting of IBM WebSphere, Struts 1.2, Java 1.6, JSP, SOAP Services, Oracle and DB2, and will be re-platformed to a modern architecture using Angular, Spring Boot, REST APIs, Oracle PL/SQL, MyBatis, and Kubernetes on Azure AKS.
This role requires strong expertise in legacy application analysis, reverse engineering, application modernization, and technical leadership. The successful candidate will be responsible for understanding existing business functionality, producing detailed technical documentation, defining modernization approaches, and leading a team through migration and implementation.
Analysis, documentation, and reverse engineering capabilities are considered more critical than pure development skills for this role.
Key Responsibilities
Key Responsibilities
Legacy Application Analysis & Modernization
Analyze and reverse engineer large-scale legacy applications built using Struts 1.2, JSP, Java 1.6, SOAP services, and IBM WebSphere.
Document business processes, application workflows, integrations, data flows, and system dependencies.
Create current-state and target-state architecture artifacts.
Collaborate with business and technical stakeholders to validate functional parity during modernization.
Define migration strategies for UI, middleware, APIs, and database components.
Technical Leadership
Lead a team of developers through design, development, testing, and deployment activities.
Provide technical guidance and conduct code, design, and architecture reviews.
Ensure adherence to enterprise development standards and best practices.
Drive solution design for performance, scalability, resiliency, and security.
Full Stack Development
Design and develop RESTful APIs using Java Spring Boot.
Build responsive user interfaces using Angular, TypeScript, HTML5, CSS, and JavaScript.
Develop and optimize database components using Oracle SQL, PL/SQL, and MyBatis.
Modernize existing SOAP-based integrations to REST-based services where applicable.
Quality & DevOps
Drive automated testing and quality engineering practices.
Ensure minimum 90% unit test coverage across developed components.
Support CI/CD implementation using Maven, Jenkins, SonarQube, Docker, GitHub/Stash, and Artifactory.
Participate in Agile ceremonies, sprint planning, estimations, and release activities.
Skill Requirements
Mandatory Technical Skills
Legacy & Modernization Expertise
8+ years of software development experience.
Strong experience with Apache Struts 1.x application development and maintenance.
Experience analyzing and modernizing legacy Java/J2EE applications.
Strong understanding of IBM WebSphere application architecture and deployments.
Experience working with JSP, Servlets, SOAP Web Services, JDBC, and legacy enterprise applications.
Backend Technologies
Java 8/11/17
Spring Framework
Spring Boot
RESTful API Development
Swagger/OpenAPI
JSON
Tomcat
Microservices Architecture
Frontend Technologies
Angular (latest versions preferred)
TypeScript
HTML5
CSS3
JavaScript
Database Technologies
Oracle SQL
PL/SQL
Relational Databases
DB2
MyBatis ORM framework
DevOps & Cloud
Maven
Jenkins
GitHub / Stash
Docker
Kubernetes
SonarQube
Azure AKS
Other Requirements
Preferred Skills
Experience migrating applications from Struts/JSP to Angular.
Experience converting SOAP services to REST APIs.
Exposure to Control-M.
Knowledge of Aerospike.
Knowledge of Snowflake.
Experience with enterprise architecture review processes.
Financial Services or Capital Markets domain experience.
Experience with Azure cloud-native deployments.
Soft Skills
Exceptional analytical and problem-solving abilities.
Strong reverse-engineering and documentation skills.
Excellent written and verbal communication skills.
Ability to communicate effectively with both technical and non-technical stakeholders.
Strong design thinking and solutioning capabilities.
Ability to perform independent technical analysis on complex systems.
High ownership, accountability, and attention to detail.
Proven leadership and stakeholder management experience.
Education
Bachelor's or Master's degree in Computer Science, Information Technology, Engineering, or a related discipline.