Senior Java Developer - Full Stack
We are looking for a highly skilled and experienced Senior Java Developer with a strong background in modern Java technologies, J2EE, Spring, Spring Boot, Oracle, as well as expertise in developing APIs/RESTful services and front-end development using Angular. As a Senior Java Developer, you will be responsible for designing, developing, and maintaining full-stack applications using Java technologies for both front-end and back-end development. You will work closely with cross-functional teams, including other developers, testers, business analysts, and project managers, to deliver high-quality software solutions that meet customer requirements.
- Design, develop, and maintain full-stack applications using Java technologies, including J2EE, Spring, Spring Boot, and Oracle.
- Develop APIs/RESTful services to enable integration between different systems and components.
- Collaborate with cross-functional teams to analyze user requirements and translate them into technical specifications.
- Implement back-end features, including data models, business logic, and database interactions, using Java technologies and best practices.
- Debug and resolve software defects and production issues in a timely manner.
- Perform code reviews and provide constructive feedback to junior team members.
- Participate in software development life cycle activities, including requirements gathering, design, coding, testing, and deployment.
- Provide technical guidance and mentorship to junior developers, as needed.
- Continuously improve software development processes and practices to ensure efficient and effective delivery of high-quality software.
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
- Minimum of 5 years of professional experience in Java software development, with full-stack expertise.
- Strong proficiency in Java technologies, including J2EE, Spring, and Spring Boot.
- Solid understanding of relational databases, particularly Oracle.
- Experience in developing APIs/RESTful services using Java technologies.
- Strong analytical and problem-solving skills, with the ability to troubleshoot and resolve complex technical issues.
- Excellent communication and collaboration skills, with the ability to work effectively in a team-oriented environment.
- Proven track record of delivering high-quality software solutions on time and within budget.
- Knowledge of software development best practices, coding standards, and version control systems.
- Experience with agile software development methodologies, such as Scrum or Kanban.
- Ability to adapt to changing technologies and learn new skills quickly.
- Experience with performance optimization and tuning of Java applications
- Familiarity with other front-end technologies, such as React, Vue.js, or Ember.js.
- Familiarity with other API standards, such as GraphQL or SOAP.
- Understanding of security best practices in software development.
- Experience with DevOps practices, such as continuous integration, continuous delivery, and automated testing.
Scope of Work:
The contractor will be working with the Department of Human Services Child Support Application and will provide the following services:
- Work with the tech debt team on implementing the solutions outlined by OIT.
- Apply secure programming techniques using OIT technical standards and best practices.
- Coordinate activities and communications with various operations, development, and business teams to efficiently resolve urgent production incidents.
- Perform regular health checks and analysis on production platforms looking for potential problems before they trigger business-impacting issues.
- Develop solutions to provide enterprise platform metrics, alarms, and monitoring tools to aid in observing and maximizing platform and business efficiency.
- Generate and track tickets for production trouble incidents, scheduled, and unscheduled change requests
- Provide leadership and direction for rapid resolution of business-impacting issues affecting production systems supporting 24x7 global operations (to include weekends and holidays).
- Coordinate update releases and other system changes, contribute to the implementation of break/fix solutions, performing unit testing, configuration management, source code control, and update documentation and configuration information related to changes as needed throughout the life cycle.