Senior Java Developer
Role details
Job location
Tech stack
Job description
The Sr. Java Developer will be responsible for providing ongoing maintenance, support, and enhancements for complex Java-based applications supporting the OBRA system and other vital records client applications.
The OBRA system is a critical application used to screen and evaluate individuals' needs and develop treatment plans. Enhancements are being implemented to improve system stability, functionality, and compliance.
This role is integral to maintaining automated OBRA processes, improving data integrity, ensuring SEM/SUITE compliance, and strengthening application security. The resource will also function as a Technical Lead, providing guidance and oversight to other developers while participating in application enhancement, integration, and implementation projects.
Failure to maintain this system could lead to manual documentation of screening plans, increasing the risk of data integrity issues and incorrect patient information reporting., * Develop well-designed, testable, and efficient code using Java technologies.
- Build and maintain applications using Spring MVC, Hibernate, Angular/React, and modern Java frameworks.
- Design and develop RESTful Web Services using Spring Web MVC.
- Develop enterprise applications using Object-Oriented Java/JEE design principles.
- Work with Apache Struts framework for application development and maintenance.
- Implement design patterns including Intercepting Filter, Front Controller, Session Façade, DAO, Singleton, and Service Locator.
- Develop and maintain unit testing frameworks using JUnit and Spring Boot.
- Participate in the full Software Development Life Cycle (SDLC) including requirement gathering, design, development, testing, and deployment.
- Design logical and physical database models.
- Develop and troubleshoot database objects including stored procedures and functions.
- Perform SQL and PL/SQL troubleshooting and optimization.
- Integrate software components into a fully functional system.
- Manage source code using Git and build frameworks such as Maven.
- Build deployment packages (WAR files) and manage software baselines.
- Develop applications on application servers including Apache Tomcat, JBoss, WebSphere, and OpenShift.
- Create software design documentation and collaborate with stakeholders for reviews and approvals.
- Develop prototypes and mockups for user validation.
- Create flowcharts, screen layouts, and system documentation.
- Provide technical leadership and oversight to development teams.
- Participate in Agile development processes including test-driven development (TDD).
Requirements
Java Development
- 10+ years of experience developing complex computer systems using Java.
- 10+ years of experience working with Java IDEs such as Eclipse and STS.
- Strong experience with Java 17+, SOAP Web Services, and Java Messaging Service (JMS).
Frameworks & Technologies
- 8+ years of experience with Java JEE Struts Framework.
- 8+ years of experience with Spring / Spring Boot Framework (3.0).
- 8+ years of experience with Hibernate / JPA.
- Experience with Spring Data, Spring Batch, and Spring Security.
Frontend Development
- 5+ years of experience with Angular or React JS.
- 2+ years of hands-on experience with React.js and modern JavaScript (ES6+).
- Strong understanding of Redux, React Router, and component lifecycle.
- Experience with HTML5, JavaScript, XML, and jQuery.
Database & Data Management
- 10+ years of experience with SQL and/or PL/SQL.
- Experience designing databases using Oracle and SQL Server.
- Experience developing stored procedures, functions, and database objects.
Application Servers & Tools
- Experience with Apache Tomcat, JBoss, WebSphere, and OpenShift containers.
- Experience with Maven build frameworks.
- Source control experience using Git.
Methodologies
- 5+ years of experience with CMM/CMMI Level 3 methods and practices.
- 5+ years implementing Agile development processes including Test Driven Development (TDD).
- Experience working on large-scale Agile projects.
DevOps & Cloud (Nice to Have)
- 3+ years of experience or knowledge creating CI/CD pipelines using Azure DevOps.
- Exposure to DevOps practices and cloud platforms such as AWS or Azure.
Messaging & Data Processing (Nice to Have)
- Knowledge of Apache Kafka, Apache Spark, and ActiveMQ broker.
AI-Assisted Development
- Hands-on experience using AI tools for coding tasks such as code generation, refactoring, and documentation.
- Experience integrating AI into development workflows to improve productivity and code quality.
Benefits & conditions
Pay: $70.00 - $80.00 per hour