Software Engineer
Role details
Job location
Tech stack
Job description
The Software Engineer will bring a strong technical and analytical mindset required to transform the current suite of applications in use into modern APIs and services. A successful candidate will work on an empowered scrum team to design and implement solutions to improve product capabilities and implement business efficiencies through a mix of process automation and innovation. This position serves a crucial role in support of the Office of Finance's (OF) mission critical areas of debt issuance, debt servicing, and combined financial reporting, which depend on the accuracy and the availability of the highly customized IT environment for the successful operation of the OF. NATURE AND SCOPE The Software Engineer is expected to have an understanding of agile software engineering and DevSecOps principles and practices. This includes the development of container-based microservices, automated testing, and leveraging CI/CD pipelines to support the continuous delivery of services and APIs. The Software Engineer will have ownership of execution and flexibility to determine technical implementation and design of the modernization efforts and process automation. The Software Engineer will stay on top of tech trends, mentoring other team members, sharing accountability, and experimenting with and learning new technologies. The Software Engineer will require quality and know what it means to ship high-quality code with minimal manual testing. We're proud of the way our teammates have a positive impact on everything we do. Our employees are committed to and exemplify our Core Values, * Contribute tochanges and improvements to OF business services through a mix of application, automation, and engineering activities.
- Develop secure, scalable services, sophisticated platforms, and APIs essential for financial systems.
- Analyzehighly complexsystem and technical issues to implement features and enhancements in an iterative way that align with strategic technical direction.
- Participatein an environment rapidly transformingintothe Agilemethodology, adhering to bestpracticesand collaborating effectively with your teammates.
- Work together with other teams to ensure service quality,availabilityand reliability.
- Work with the project team and theappropriate stakeholdersto convert business requirements to written technical specifications that adhere to the OF's architectural guidelines andindustrybest practices.
- Supportapplicationendusers by addressing and resolving application-related problems and issues ina timelyand cordialmanner.
- Develop andmaintainapplication supportandend userdocumentation.
- Assistwith other job duties as assigned.
Requirements
Do you have experience in Spring Boot?, Do you have a Bachelor's degree?, * Bachelor's degree inComputer Science, InformationSystems, orrelatedfield, or relevant work experience.
-
5-7 yearsexpertisein Spring Boot and Java17+.
-
Experience in the followingisrequired:
-
Integrated Development Environments:IntelljandMaven;
-
Solid experience with coreJava technologies and concepts;
-
Strong unit, mock, and behavioral testing background using tools like Junit 5, Mockito, andCucumber;
-
Knowledge of multi-tier web application development using standard presentation layer technologies; and
-
Understanding ofsource code management principles in a team environment.
-
Experience in the followingispreferred:
-
Deep understanding of Java performance tuning (GC, threading, memory);
-
API security: OAuth2/OpenID Connect;
-
Source control system:Git;
-
Advanced SQL skills (Liquibase is a plus);
-
Working knowledge of financial services and mortgage industries, including related rules and regulations;and
-
Ability to develop UNIX or RHEL-basedscripts.
-
Knowledge ofobject-oriented design and programming conceptsincluding design patterns.
-
Experience in microservices and RESTful service design and development.
-
ProficiencywithCircuit breakers, retries, idempotency strategies.
-
Experience with transaction management, messaging, thread safety, and data integrity.
-
Experience with load testing and tuning.
-
Proficiencywith Continuous Integration/Continuous Delivery process and tools;Jenkins and pipeline as code a plus.
-
Experience with front-end technologies such as Angular, TypeScript or similar technologies.
-
Familiarity with Docker/Kubernetes.
-
Familiarity with OpenShift stack.
-
Familiarity JMS queue/topic development/usage.
-
Actively working on projects using agile/lean methodologies and practices; Jira/Confluence tools a plus.
-
Organized, detail-oriented, and able to work collaboratively with employees at all levels within theorganization.
-
Ability to listen and integrate ideas fromdifferentgroupsof individuals, build andmaintainrespectful relationships, collaborate with others, and resolve conflicts constructively.
-
Proof of eligibility to work in the United States.