Senior Full Stack Software Engineer
We are looking to build our team of interested candidates with experience in Full-Stack Java development and invite you to share your information with us. Let us know if you would be interested in working on our high-performing teams and help build modern solutions impacting the multitrillion dollar mortgage industry.
Our Integrated Technology Solutions (ITS) team based in Reston, VA is looking for multiple Senior Full-Stack Software Engineers to help develop and support our mission critical applications. These applications support some of the most important financial activities happening at Fannie Mae today (a critical element in the national economy). Additionally, you will be a part of an on-going effort to modernize our platforms across ITS as we work in an agile and collaborative manner.
We are looking for highly motivated engineers who want to solve tough technical challenges and learn and incorporate new technologies into their skillset. In this role, you would use a tech stack including Java, Spring Boot, and Microservices-based architecture in AWS. You will be engaged across the software development life cycle to create and modify platforms and capabilities in a collaborative and Agile environment. You will play a lead technical role in development teams' efforts to assess high level design issues relating to platform, enterprise software, and interactions with other systems as well as participate in architecture and design sessions.
KEY JOB FUNCTIONS
- 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
- Provide leadership, behavioral and technical mentoring to other team members, work to foster an agile and collaborative work environment.
- May serve as technical lead, architect, project lead or principle developer in course of large or complex project.
- Leverage Fannie Mae DevOps tool stack to build, inspect, deploy, test and promote new or updated features
- Work with product owners and other development team members to determine new features and user stories needed in large/complex development projects
- Support the team in the writing of deployment scripts and place strong emphasis in automated deployment, infrastructure automation solutions, and continuous delivery process.
- 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.
- Create or Update documentation in support of development efforts. Documents may include detailed specifications, implementation guides, architecture diagrams or design documents.
- Bachelor's Degree or equivalent required
- 6+ years of related experience
SPECIALIZED KNOWLEDGE & SKILLS
- Excellent collaboration and communication skills. Strong ability to mentor/coach team members as well as experience in influencing senior leadership
- At least 8 years of experience in Java/J2EE and related technologies with solid understanding of design principles
- Experience with front-end technologies such as Angular, TypeScript, ReactJS and related technologies would be a plus
- Expert proficiency in unit testing as well as coding in 1-2 languages
- Experience with implementing integration solutions with Microservices, RESTful Web Services and Web APIs
- Expert proficiency in Object Oriented Design (OOD) and analysis
- Expert proficiency in application of analysis/design engineering functions
- Expert proficiency in application of non-functional software qualities such as resiliency, maintainability, etc.
- Expert proficiency in advanced behavior-driven testing techniques
- Provide expertise for teams in all matters related to deployment, building and release process
- Experience leading and working in Agile Team
- Experience as a Tech Lead and ability to provide technical guidance in designing and architecting critical software applications
- Experience in developing Cloud (AWS, Azure, etc.) based capabilities including implementation, development and support experience
- Knowledge of Microservices-based architecture is strongly desired
- Knowledge or experience in basic DevOps support and deployment
Fannie Mae has multiple Software Engineer opportunities available across our Integrated Technology Services division.
Fannie Mae is an Equal Opportunity Employer, which means we are committed to fostering a diverse and inclusive workplace. All qualified applicants will receive consideration for employment without regard to race, religion, national origin, gender, gender identity, sexual orientation, personal appearance, protected veteran status, disability, age, or other legally protected status. For individuals with disabilities who would like to request an accommodation in the application process, email us at firstname.lastname@example.org.