Our client is seeking a Senior Software Designer & Developer to design, develop, modernize, and maintain enterprise-grade applications while supporting cloud migration initiatives, particularly within the Azure ecosystem.
Must Have skills
- Bachelor’s degree or diploma in Computer Science, Engineering, or a related field, or equivalent experience.
- Minimum 10 years of experience in
- application systems development, business analysis, design, integration, and maintenance.
- hands-on Java development experience.
- designing and implementing complex, end-to-end J2EE solutions.
- web services, JavaScript, HTML, and PL/SQL.
- Minimum 5 years of experience in application integration with JMS and APIs.
- Proven experience in application modernization and cloud migration, preferably within Microsoft Azure.
- Strong experience analyzing legacy applications and defining cloud migration strategies, including rehost, replatform, and refactor approaches.
- Experience refactoring Java-based applications for cloud-native environments.
- Solid knowledge of Java, object-oriented design and programming, domain-driven design, design patterns, refactoring, and unit testing.
- In-depth knowledge of Java frameworks such as Spring, Spring Boot, and JUnit.
- Experience with backend services, APIs, RESTful design, JMS, and event-driven integrations.
- Experience with complex data model design, DML, and DDL scripting.
- Strong understanding of physical database design principles in Oracle and SQL Server environments.
- Experience designing and developing user interfaces using JavaScript, JSP, HTML, and CSS.
- Working knowledge of application server and networking concepts.
Nice to Have skills
- Microsoft Azure cloud migration experience.
- Experience with database modernization, including Oracle to PostgreSQL migration.
- Familiarity with DevOps practices, containerization, Docker, and Linux environments.
- Experience with Linux and Docker virtual environments.
- Experience with ReactJS and Redis.
- Experience with automated testing tools such as Selenium and REST Assured.
- Experience in IT support and/or data analysis.
- Experience mentoring junior developers and providing technical guidance across teams.
- Experience evaluating and adopting new technologies to support innovation and continuous improvement.
Responsibilities
- Lead end-to-end application analysis and remediation for cloud migration, including application architecture, dependencies, and technical constraints.
- Identify and implement design and code changes required to make applications cloud-compatible, including refactoring for microservices, containerization, and cloud-native patterns.
- Analyze and optimize database workloads and queries for cloud environments, with a focus on performance, scalability, and cost efficiency.
- Collaborate with cloud and platform teams to align applications with Azure architecture standards, security, and operational practices.
- Evaluate and apply cloud-native design best practices, including resiliency, observability, and scaling strategies.
- Lead technical solutioning for database modernization, including Oracle to PostgreSQL migration where applicable.
- Design and develop scalable, high-performance applications using object-oriented and distributed architecture principles.
- Lead the development of complex enterprise solutions using Java and J2EE technologies.
- Define and document architecture, design patterns, development standards, and functional design specifications.
- Develop and maintain backend services, APIs, and event-driven integrations.
- Design and develop user interfaces using JavaScript, JSP, HTML, and CSS.
- Integrate applications with internal and external systems while ensuring reliability and data integrity.
- Contribute to API design, microservices architecture, and cloud-ready solutions.
- Ensure code quality through unit testing, automation, code reviews, and development best practices.
- Provide accurate effort estimates and contribute to sprint planning and delivery commitments.
- Ensure development work meets specifications, standards, quality requirements, security policies, and governance practices.
- Provide maintenance support for critical systems, which may include 24/7 technical support to system controllers and business users.
- Maintain detailed logs of service calls and resolution steps.
- Collaborate with product owners, business analysts, architects, and cross-functional teams.
- Mentor junior developers and provide technical guidance across teams.
- Contribute to continuous improvement of development processes, tools, and frameworks.
#LI-SK1
#D480