Developer IV Specialized (AWS)
Location: Reston, VA
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.
KEY JOB FUNCTIONS
- 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.
- 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
SPECIALIZED KNOWLEDGE & SKILLS
- Minimum of 8 years of software design and development experience with mission critical and large customer facing platforms
- AWS Certification required (AWS Certified Developer and/or DevOps Engineer)
- Experience working in Agile teams (Scrum, Jira, Confluence, DevOps)
- Hands on experience in Java, Python, Shell scripts, Node.JS, AWS CLI and AWS SDKs
- Hands on experience with CICD/Devops tools (AWS Code Commit, Code Build, Code Pipeline, Urban Code, Jenkins, Maven, Bitbucket, GIT, etc)
- Hands on experience with AWS services - including but not limited to: Lambda, Elastic Beanstalk, CloudFront, API Gateway, EC2, EMR, Batch, ECS, S3, IAM, RDS, SNS, SQS, Cloud Watch, Cloudtrail, etc.
- Hands on experience with AWS provisioning systems (CloudFormation, AWS Service Catalog, APIs, etc)
- Hands on experience with security configuration (Encryption, KMS, IAM, SSL/TLS, WAF, Security Groups, NACLs, etc)
- Hands on experience with networking including but not limited to Routes, VPCs, Subnets, DNS, Load balancing, API Gateway, etc)
- Hands on experience working with container technology including but not limited to Kubernetes, ECS, EKS, Fargate, Docker, etc
- Excellent communications and collaboration skills required to share information with business and technology staff.
- Must have previous operations experience in cloud environments
- Ability to lead technical discussions between stakeholders.