Senior Java Software Engineer
Backend Developer
Senior
Apache Tomcat
Containerization
Database
Databases
Developer
DevOps
Docker
Engineering
Information Technology (IT)
Information Technology It
Java
Java Language
Keycloak
Oracle
Oracle Database
Oracle Pl/sql
PostgreSQL
Software Development
Software Engineer
Software Engineering
Spring Framework
SQL
Job Description
Professional Management Enterprises, Inc. is seeking a Senior Java Software Engineer in Indianapolis, Indiana (onsite) to design, develop, implement, and support enterprise applications. The role emphasizes Java and Oracle database technologies, Agile delivery, and technical leadership with ownership of key components of an STC product.
Responsibilities
- Architect, design, develop, and maintain high-quality, scalable, and reliable applications while following established coding standards and software engineering best practices.
- Deliver technical guidance within an Agile development team, mentor junior developers, and contribute to architectural decisions and implementation strategies.
- Build and maintain Java-based applications using Java, Struts 2.0, JSP, Servlets, Spring Framework, JavaScript, and jQuery.
- Develop, configure, deploy, and support applications running on Apache Tomcat and other Java application servers.
- Design and maintain Oracle database objects, including tables, views, and stored procedures, using Oracle SQL and PL/SQL.
- Support client database administration activities by investigating application and database issues, performing data modifications, and developing reports as needed.
- Analyze and optimize application and database performance, troubleshoot complex technical issues, and resolve production incidents.
- Partner with DevOps teams to support application releases, streamline deployments, and maintain continuous integration workflows.
- Provide technical support to project team members and take ownership of one or more STC product components to ensure stability, functionality, and maintainability.
- Promote SDLC practices, including version control, change management, unit testing, test-driven development, and continuous integration.
- Participate in occasional after-hours support and maintenance to help ensure application availability and operational continuity.
Requirements
- At least five years of professional experience as a software engineer or software developer.
- At least five years with several of the following: Java application development and application servers, including Apache Tomcat or Oracle Application Server.
- At least five years with several of the following: Java frameworks, including Struts 2.0 and the Spring Framework.
- At least five years with several of the following: Java Web Services, JSP, and Servlets.
- At least five years with several of the following: Oracle database development and administration support.
- Strong proficiency in Oracle SQL and experience developing and maintaining PL/SQL stored procedures, views, and other database objects.
- Experience developing and maintaining web-based user interfaces using JSP, JavaScript, and jQuery.
- Demonstrated ability to debug, analyze, and optimize SQL queries for performance and efficiency.
- Experience supporting database-related issues, including performance tuning, troubleshooting, and resolving application-to-database integration problems.
- Solid understanding of the software development lifecycle, including version control, change management, continuous integration, unit testing, and test-driven development.
- Experience working within an Agile Scrum team.
- Strong analytical, problem-solving, and troubleshooting skills.
- Excellent written and verbal communication skills, including the ability to explain technical concepts to technical and non-technical audiences.
- Ability to work independently, collaborate with cross-functional teams, and take ownership of assigned deliverables.
- Availability to provide occasional after-hours support and maintenance.
Technologies
- Java
- Oracle
- Oracle SQL
- PL/SQL
- Struts 2.0
- JSP
- Servlets
- Spring Framework
- JavaScript
- jQuery
- Apache Tomcat
- Oracle Application Server
- PostgreSQL
- Keycloak
- Docker
Preferred Qualifications
- Bachelor’s degree in Computer Science, Computer Information Systems (CIS), Mathematics, Engineering, or a related field.
- Experience with PostgreSQL (Postgres).
- Familiarity with Single Sign-On (SSO) solutions such as Keycloak.
- Experience building, packaging, and deploying applications using Docker containers.
- Experience supporting enterprise software products in production environments.
- Demonstrated ability to mentor developers and contribute to technical architecture and engineering standards.
What Success Looks Like
- Delivering reliable, scalable, and maintainable software solutions while helping the team work more effectively.
- Using technical expertise to improve application performance, resolve challenging production issues, strengthen database reliability, and support successful software releases.
- Serving as a trusted technical resource for the project team by contributing to continuous improvement and taking ownership of critical STC product components.