- Translate complex mathematical, business, and financial modeling logic into software code.
- Design and execute test cases for modeling and analytical software applications to ensure they meet business needs and model requirements. Design and execute modeling application systems via distributed computing both on premise and on external cloud.
- Support the team in the writing of deployment scripts and place strong emphasis in automated deployment, infrastructure automation solutions, and continuous delivery process.
- Work with product owners and other development team members to determine new features and user stories needed in large/complex development projects.
- Create or Update documentation in support of development efforts. Documents may include detailed solution 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 or provide technical guidance to less experienced 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. May serve as technical lead, architect, project lead or principle developer in course of large or complex project.
- Expert proficiency in unit testing as well as coding in Java and Python.
- 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.
Education Level Preferred
- Master’s degrees or higher preferred.
Area of Study Preferred
- Computer Science, Engineering, Applied Mathematics, Statistics, Economics or Finance or a related discipline preferred.
- AWS certification(s) preferred.
- 8-10 years of related experience
- Experience developing using Java or Python
- Hands-on experience with cloud technologies
- Knowledge of Unix/Linux environment
- Highly experienced with Agile practices and methodologies
SPECIALIZED KNOWLEDGE & SKILLS
- Minimum of 8 years of software design and development experience with mission critical and large customer facing platforms.
- Hands-on experience and proficiency in programming in Java/J2EE and Python.
- Hands on experience in building and deploying applications in AWS. Experience in AWS technologies like EC2, S3, EB, Lambda, BATCH, Code Commit, Code Pipeline.
- Hands on experience with Container Technologies like Docker.
- Experience with CI/CD with knowledge of Git Hub, Maven and Jenkins.
- Hands on experience with building RESTful Web Services.
- Expert knowledge of Linux/Unix environment and shell scripting.
- Ability to lead complex architecture and design white-boarding sessions.
- Experience in object modeling, designing data models and database schemas, and solving scalability issues.
- Experience with working with financial or scientific modeling software applications.
- SaS and R programming experience is desired.
- Financial industry and analytics experience highly desired.
As a condition of employment with Fannie Mae, any successful job applicant will be required to successfully complete a background investigation.
Fannie Mae is an Equal Opportunity Employer.
Req ID: 58386