Job Description
Job Title: Sr Java Developer
Location: Salt Lake City, UT
Position Overview:
The Sr Java Developer will play a key role in the design, development, and maintenance of Java-based applications for our banking systems. This position requires a highly skilled individual with strong programming abilities in Java, proficiency in object-oriented design principles, and experience with various Java frameworks and web development technologies. The ideal candidate will have a background in working with distributed storage systems, CI/CD pipelines, and Unix/Linux environments.
Key Responsibilities:
Design and Development:
- Develop, implement, and maintain Java-based applications that are robust, scalable, and efficient.
- Utilize object-oriented design principles to architect high-quality, maintainable software solutions.
- Collaborate with cross-functional teams to define, design, and ship new features.
Frameworks and Libraries:
- Utilize Java frameworks such as DropWizard, Spring, and Hibernate to enhance application performance and maintainability.
- Work with web development frameworks like Angular or React to create dynamic and responsive user interfaces.
Database Management:
- Integrate and manage distributed storage systems including DB2, Oracle, Cassandra, and MongoDB.
- Ensure data integrity and optimize database performance through effective querying and indexing.
CI/CD and DevOps:
- Implement and manage continuous integration and continuous deployment (CI/CD) pipelines, especially using Git.
- Collaborate with DevOps teams to streamline the deployment process and automate workflows.
System Administration:
- Maintain and troubleshoot applications in Unix/Linux environments.
- Monitor system performance and ensure the reliability and availability of applications.
Collaboration and Communication:
- Work closely with project managers, business analysts, and other stakeholders to understand requirements and deliver high-quality solutions.
- Provide mentorship and guidance to junior developers and contribute to the continuous improvement of development processes.
Qualifications:
Education:
- Bachelor’s degree in Computer Science, Information Technology, or a related field.
Experience:
- Minimum of 5 years of experience in Java development.
- Proven experience with Java frameworks such as DropWizard, Spring, and Hibernate.
- Familiarity with web development frameworks (Angular or React).
Technical Skills:
- Strong programming skills in Java with a deep understanding of object-oriented design principles.
- Experience with distributed storage systems like DB2, Oracle, Cassandra, MongoDB.
- Familiarity with CI/CD pipelines, especially using Git.
- Working knowledge of Unix/Linux environments.