Title: Sr Software Developer
Grade: 4B – Java Developer
Job Description:
We are seeking a skilled Java Developer to join our dynamic team. The ideal candidate will have a strong background in Java development and experience with Maven for project management and build automation.
Responsibilities:
- Develop, test, and maintain Java-based applications.
- Utilize Maven for project management, build automation, and dependency management.
- Collaborate with cross-functional teams to define, design, and ship new features.
- Write clean, scalable, and efficient code.
- Troubleshoot and debug applications.
- Participate in code reviews to maintain code quality and share knowledge.
- Proficiency in Java and related technologies (e.g., Spring, Hibernate).
- Strong experience with Maven.
- Familiarity with version control systems (e.g., Git).
- Experience with other build tools like Gradle.
- Familiarity with continuous integration/continuous deployment (CI/CD) pipelines.
- Knowledge of cloud platforms (e.g., AWS, Azure).
- Maven Build Automation:
Create and manage Maven build scripts (pom.xml) to automate the packaging, compilation, and deployment of Java-based applications.
Ensure the correct versioning, artifact management, and dependency resolution using Maven.
- Maven Configuration and Dependency Management:
Configure Maven to manage external dependencies, plugins, and modules.
Set up parent-child projects using Maven for multi-module applications.
- Repository Management:
Integrate Maven with repository management tools such as Nexus or Artifactory for managing artifacts.
Maintain and optimize local and remote Maven repositories.
- CI/CD Pipeline Support:
Collaborate with CI/CD engineers to integrate Maven builds into Jenkins or other CI tools.
Automate build, testing, and deployment workflows with Maven in a continuous integration environment.
- Plugin Management:
Implement and customize Maven plugins to support various stages of the software development lifecycle.
Use popular Maven plugins for testing, compiling, packaging, and deploying applications.
- Performance Optimization:
Optimize Maven build times and performance by managing dependencies and using build profiles.
Troubleshoot and resolve build issues related to Maven configurations.
- Documentation and Best Practices:
Document Maven configurations, processes, and best practices for the development team.
Provide guidance on Maven usage, dependency management, and build automation.