Software Engineer

Federal Home Loan Banks - Office of Finance
Reston, United States of America
12 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Reston, United States of America

Tech stack

Java
API
Agile Methodologies
Confluence
JIRA
Automation of Tests
Unix
Computer Programming
Continuous Delivery
Continuous Integration
Data Integrity
Software Design Patterns
Web Development
Integrated Development Environments
Java Message Service (JMS)
JUnit
Liquibase
Load Testing
OAuth
Openshift
Performance Tuning
Scrum
Red Hat Enterprise Linux - RHEL
Openid Connect
Mockito
Service Design
TypeScript
Web Services
Sql Optimization
Spring-boot
Software Security
GIT
Angular
Kubernetes
Front End Software Development
REST
Software Version Control
Devsecops
Docker
Jenkins
Microservices

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.

Apply for this position