Description du poste
Job Summary Synechron is seeking a Java Full Stack Developer to develop, maintain, and enhance Java-based applications and enterprise systems. The role will focus on Java and Java EE development, web application frameworks, relational databases, SQL, RESTful web services, version control, and Agile delivery practices. The successful candidate will collaborate with cross-functional teams to deliver scalable, maintainable, and reliable software solutions. This position will contribute to business objectives by delivering high-quality application features, improving existing functionality, resolving technical issues efficiently, and supporting secure and sustainable software development practices. Software Requirements Required Software Skills Java: Strong programming and application-development experience. Java EE: Strong knowledge of the Java EE platform and enterprise application concepts. Web development frameworks: Experience with Spring, Hibernate, JSF, or equivalent Java web development frameworks. Relational databases: Knowledge of relational database systems and SQL. RESTful web services: Understanding and practical experience developing or integrating RESTful services. Git: Familiarity with Git or equivalent version control systems. Agile methodologies: Familiarity with Agile software development practices. Software engineering: Ability to write clean, maintainable, scalable, testable, and well-documented code. Debugging: Ability to investigate and resolve complex technical issues. Preferred Software Skills Experience with multiple Java web development frameworks. Exposure to application integration, API development, and enterprise system connectivity. Familiarity with automated testing, build tools, deployment tools, and CI/CD practices. Knowledge of application performance, logging, monitoring, and production support tools. Exposure to cloud-based application development and deployment. Version And Experience Guidance Specific Java, Java EE, Spring, Hibernate, JSF, database, and Git versions are not mandated in the requirements. Candidates should have experience with current, production-supported versions of the required technologies. Candidates should be able to assess compatibility, support upgrades, follow version-control practices, and maintain application stability. The qualification requirement specifies at least 3 years of Java software development experience. Overall Responsibilities Develop and maintain Java-based applications and enterprise systems. Design and implement application functionality using Java and Java EE technologies. Develop web applications using Spring, Hibernate, JSF, or related frameworks. Write clean, maintainable, scalable, reusable, and well-documented code. Develop, integrate, and maintain RESTful web services. Work with relational databases and SQL to support application data requirements. Collaborate with cross-functional teams to develop new features and improve existing functionality. Participate in requirements discussions, technical design, development, testing, deployment, and application support. Participate in code reviews and ensure that code adheres to established coding standards and development practices. Debug and resolve technical issues within agreed timelines. Contribute to application quality through testing, code reviews, documentation, and defect prevention. Use Git or equivalent version control systems to manage source code and collaborate with development teams. Work within Agile software development methodologies and participate in relevant delivery activities. Stay current with developments in Java and related technologies. Identify opportunities to improve application performance, maintainability, reliability, automation, and efficient use of technical resources. Contribute to measurable outcomes such as timely feature delivery, reduced defects, improved application stability, and successful resolution of technical issues. Technical Skills (By Category) Programming Languages Essential Strong Java programming skills. Strong knowledge of Java EE. Understanding of object-oriented programming principles. Ability to write modular, reusable, maintainable, and scalable code. Ability to apply exception handling, debugging, testing, and software design practices. Preferred Experience with additional programming or scripting languages used in enterprise application development. Familiarity with asynchronous, event-driven, or distributed application development. Experience creating reusable libraries and shared application components. Databases/Data Management Essential Knowledge of relational databases. Strong working knowledge of SQL. Understanding of tables, relationships, joins, indexes, constraints, transactions, and data integrity. Ability to develop, analyze, and optimize SQL queries. Ability to integrate Java applications with relational databases. Understanding of secure data access and appropriate data-handling practices. Preferred Experience with stored procedures, database performance tuning, and query optimization. Exposure to database migration, data validation, and data-integrity testing. Familiarity with additional database technologies. Understanding of data backup, recovery, retention, and lifecycle considerations. Cloud Technologies Essential Understanding of application deployment and support across development, testing, and production environments. Understanding of application scalability, availability, configuration, and operational support. Ability to work with environment-specific settings and application integrations. Preferred Exposure to cloud-based application development and deployment. Familiarity with cloud services, containers, serverless technologies, and infrastructure automation. Understanding of cloud resource optimization and sustainable application operations. Experience supporting applications in distributed or hybrid environments. Frameworks and Libraries Essential Java EE. Spring or equivalent Java web development framework. Hibernate or equivalent object-relational mapping framework. JSF or equivalent web user-interface framework. RESTful web services. Java database connectivity and related data-access technologies. Frameworks supporting application validation, security, exception handling, and testing. Preferred Experience with multiple Java web frameworks. Libraries supporting API integration, caching, messaging, logging, and observability. Frameworks supporting automated testing and application performance monitoring. Exposure to microservices or cloud-native application frameworks. Development Tools and Methodologies Essential Git or equivalent version control system. Familiarity with Agile software development methodologies. Experience across the software development lifecycle, including requirements analysis, design, development, testing, deployment, and support. Experience participating in code reviews and applying coding standards. Ability to create technical documentation, test cases, design notes, and support procedures. Ability to debug technical issues and implement corrective fixes. Understanding of collaborative development, defect management, and release practices. Preferred Familiarity with build and dependency-management tools. Exposure to CI/CD pipelines and automated deployments. Experience with automated unit, integration, and regression testing. Familiarity with Agile ceremonies, iterative planning, and continuous improvement practices. Exposure to application monitoring, logging, and production support processes. Security Protocols Essential Understanding of secure software development practices. Knowledge of application authentication, authorization, access controls, and secure configuration. Ability to apply input validation, output validation, secure API practices, and appropriate error handling. Understanding of secure database access and protection of sensitive information. Awareness of risks related to unauthorized access, insecure APIs, injection vulnerabilities, credential exposure, and data leakage. Ability to follow organizational security, privacy, compliance, and change-management requirements. Preferred Familiarity with secure RESTful service implementation. Exposure to encryption, secrets management, security testing, and audit logging. Experience integrating security checks into development and deployment processes. Knowledge of identity and access-management patterns used in enterprise applications. Experience Requirements Overall experience: At least 3 years of experience in Java software development. Java experience: Strong hands-on experience developing and maintaining Java and Java EE applications. Framework experience: Experience with Spring, Hibernate, JSF, or equivalent Java web development frameworks. Database experience: Experience with relational databases and SQL. API experience: Experience developing or integrating RESTful web services. Delivery experience: Familiarity with Agile software development methodologies and version control systems such as Git. Industry preference: Experience delivering enterprise-scale, business-critical, secure, or highly available applications is preferred. Alternative experience pathways: Equivalent combinations of relevant Java development experience, technical training, substantial application delivery, open-source contributions, or demonstrable production implementations may be considered. Outcome evidence: Candidates should demonstrate contributions to timely application delivery, improved code quality, reduced defects, successful issue resolution, application stability, or maintainable software solutions. Day-to-Day Activities Develop, enhance, test, debug, and maintain Java and Java EE applications, web components, RESTful services, database integrations, and related software functionality. Collaborate with cross-functional teams through requirements discussions, technical design sessions, Agile meetings, code reviews, testing