Software Engineer II
Posted on Jun 14, 2019 by Fannie Mae
Fannie Mae provides reliable, large-scale access to affordable mortgage credit in communities across our nation. We are the leading source of funding for housing in America, which means more people can buy or rent a home. We are focused on sustaining the housing recovery, improving our company, and leading change to make housing better.
Join our diverse, high-performing team and make a difference as we work together to enable access to a good home.
For more information about Fannie Mae, visit
Use modern tools, techniques, and methods to develop, modify, or update applications used by business units or infrastructure units. Collaborate with subject matter experts in those units to determine unit needs and business processes that are automated by the application. Participate in most or all of the steps in the software development life cycle to create and modify the software.
KEY JOB FUNCTIONS
- Work with product owners and other development team members to determine new features and user stories needed in new/revised application.
- Participate in code reviews with peers and managers to ensure that each increment adheres to original vision as described in the user story and all standard resource libraries and architecture patterns as appropriate.
- Serve as a technical lead for an Agile team and actively participate in all Agile ceremonies. Participate in all team ceremonies including planning, grooming, product demonstration and team retrospectives.
- Leverage Fannie Mae DevOps tool stack to build, inspect, deploy, test and promote new or updated features.
- Respond to trouble/support calls for applications in production in order to make quick repair to keep application in production.
- Create or Update documentation in support of development efforts. Documents may include detailed specifications, implementation guides, architecture diagrams or design documents.
- Mentor less experienced staff.
- Set up and configure a continuous integration environment.
- Intermediate proficiency in unit testing as well as coding in 1-2 languages (e.g. Java, etc).
- Intermediate proficiency in Object Oriented Design (OOD) and analysis. Intermediate proficiency in application of analysis/design engineering functions. Intermediate proficiency in application of non-functional software qualities such as resiliency, maintainability, etc. Intermediate proficiency in applying behavior-driven testing techniques.
- Bachelor's Degree or equivalent required
- 4+ years of related experience
SPECIALIZED KNOWLEDGE & SKILLS
- Good understanding of VMware Virtualization technologies, AWS Cloud, Container Infrastructure (Docker)
- Solid understanding and knowledge of scripting and automation using Shell, Ruby, Perl, Python, Powershell etc.
- Coordinate all aspects of a release lifecycle including development and test activities
- Acts as key participant in coordinating releases/deployment of code through different environments (Dev, Test, Staging, UAT, Production)
- Experience/good understanding and knowledge on SQL skills in Oracle, MSSQL, etc
- Develop best practices for infrastructure as code (e.g. Puppet, Shell scripting), software build tools (Maven, ANT, Shell)
- Knowledge of Continuous integration Tools (Jenkins, GitLab, Bamboo, TeamCity), and infrastructure automation (VM Ware, Chef, etc.)
- Good experience in various Unix OS flavors, Linux, Windows
- Knowledge of Privilege Access Security tools (CyberArk) is a plus
- Good experience developing and using various test automation
As a condition of employment with Fannie Mae, any successful job applicant will be required to pass to successfully complete a background investigation.
Fannie Mae is an Equal Opportunity Employer.
Req ID: 56917