The Tools Team is a small group of Java full-stack developers responsible for development, maintenance, and support of a collection of currently on-prem web-based applications that support the Mainframe users. These applications streamline, simplify and secure mainframe processes for company-wide activities such as access control, reporting, data management and other production support. A variety of frameworks are currently used (Java EE, JSF, Angular, Spring) across the applications and they run on WAS Liberty servers hosted on z/OS or on Cloud Run in GCP. Software engineers on this team will need to be able to support all aspects of development and engineering for these applications, including any migration or changing of the tech stack type of activities.
Must Have
Java or SpringBoot experience for backend Angular experience for frontend Cloud hosting and development, GCP preferred Containerization experience, OpenShift preferred Relational database and SQL experience Any IDE experience Git/ GitHub experience Agile methodologies and SDLC CI/CD, Tekton preferred Strong analytical skills Desire to learn new things as well as share knowledge Excellent communication and collaboration Customer service skills to assist user baseNice to Have
Gradle experience API development Any mainframe related experience (RACF, JCL/ JES, USS. etc.) WAS Liberty hosting experience Authentication strategy experience, Microsoft Entra preferred Supporting applications needing to meet auditing/ policy requirements Large enterprise experience providing automation and tooling Cross-functional experienceThis role owns the development of improvements for application functions and processes, customer experience, and reduction of technical debt. This also includes activities to simplify the applications to make them more maintainable and extendable for the future. You will need to be able to gather and understand requirements, work cross functionally, and have autonomy to deliver solutions. It will be important to understand the “new” solutions for these applications and pick up on their current tech stacks as you progress. Learning and knowledge sharing are critical.
Additionally, this role needs to be able to understand IT policy and ensure that how you work, and all aspects of the applications stay aligned to it, especially as policy changes. It is important then to be collaborative and communicative both in the team and cross functionally, and willing to help discover and share information if it is not known within the team. This also means that asking questions and sharing responsibility is key, so you will be both a mentor and mentee at times. You will be expected to support team documentation in both creation and reviewing and updating. Owning auditing activities will be considered a nice-to-have, but you will need to understand supporting them whether it is internal or external.
This role will be integral for supporting the migration and re-writes of the applications to new tech stacks and architecture solutions. Java, Angular, Spring, OpenShift, and cloud hosting/ development (GCP) will be critical. It will be more important to pick up on or know these instead of the current technologies and architecture. Having general software development/ engineering experience will let you understand the current technologies of the applications which include Java EE, JSF, relational databases (DB2) and traditional SQL, and WebSphere Liberty servers. The team uses Git/ GitHub for source code management, a variety of IDEs (Eclipse, VS Code, IntelliJ) to work in, and Tekton/ uDeploy for our build and deploy pipeline. API experience is nice to have. Mainframe platform specific technologies are not a requirement and can be gained through the course of the role’s duties.
Lastly, the team follows Agile methodologies and practices so you will need to have experience with Agile, CI/CD, and paired programming. An understanding of DevSecOps and DevOps will also be beneficial as this team has full responsibility for the workflows and deliveries of software. This role will support all stages of the SDLC and the operations of the applications. It is good to be comfortable with code reviews, provide feedback, and follow good habits to create supportable, maintainable, reusable, and extendable code.