Fannie Mae Careers

Java Software Engineer III - BDD & TDD Specialist

Reston, Virginia
Information Management

Job Description


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. Lead, or play lead technical role in development teams' efforts to determine unit needs and business processes that are automated by the application. Participate in or review all of the steps in the software development life cycle to create and modify the software.

  • Integrates engineering and product teams in designing and developing enterprise-level automated test methodologies.
  • Leads product development team in writing actionable, testable product requirements in the form of user stories
  • Researches market and industry trends in the development and maintenance of test tools and frameworks to validate unit, integration and functional tests of the system. Anticipates product development team needs for specialized test tools and frameworks.
  • Evaluate and improve testing methodologies and enterprise frameworks for continuous improvement
  • Work with product owners and other development team members to determine new features and user stories needed in new/revised applications or large/complex development projects.
  • Create or Update documentation in support of development efforts. Documents may include detailed specifications, implementation guides, architecture diagrams or design documents.
  • 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.
  • Respond to trouble/support calls for applications in production in order to make quick repair to keep application in production.
  • 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.
  • Mentor less experienced technical staff; may use high end development tools to assist or facilitate development process.
  • Leverage Fannie Mae DevOps tool stack to build, inspect, deploy, test and promote new or updated features.
  • Set up and configure a continuous integration environment.
  • Advanced proficiency in unit testing as well as coding in 1-2 languages (e.g. Java, etc).
  • Advanced proficiency in Object Oriented Design (OOD) and analysis. Advanced proficiency in application of analysis/design engineering functions. Advanced proficiency in application of non-functional software qualities such as resiliency, maintainability, etc. Advanced proficiency in advanced behavior-driven testing techniques.
  • Bachelor's Degree or equivalent required
  • 4+ years of related experience
  • 4+ years of experience as a Software Engineer with Java/JEE (or another type of full-stack development experience)
  • Strong experience in building and driving TDD & BDD in application development in an Agile environment.
  • Experience with Test Automation tools including but not limited to: Selenium, Gherkin,
  • Experience with any JavaScript based libraries (React.js, Angular, etc.)
  • Passionate about driving change and self-motivated individuals.
  • 3+ years of hands on experience implementing test automation for enterprise applications (web services, SOA, ETL and backend) 
  • Proficiency with open source automation tools (Selenium, Cucumber, Gherkin)  and proficiency with open source test frameworks  
  • 3+ years’ experience with Continuous Integration/Continuous Delivery (Jenkins, Urban Code, etc.) 
  • 3+ years’ experience with build tools (Maven, Gradle, Nexus) preferred
  • 3+ years’ experience with SCM tools (SVN, BitBucket, GitHub), SQL (Oracle), project management tools (Jira, HP ALM suite) 
  • Experience working with AWS deployed applications (Docker/ Kubernetes)

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: 55787