Previous Job
Senior Java Developer
Ref No.: 18-04949
Location: Rosslyn, Virginia
Start Date: 05/16/2018
AFS is at the forefront in supporting a federal agency's Verification Modernization to enable the agency to more capably handle new requirements and the volume associated with Immigration Reform and mandatory E-Verify. AFS is seeking a senior Java Developer / DevOps Engineer for a position in downtown Washington DC to support its ongoing Verification Information System modernization development effort. Using a light-weight Java framework and Ruby on Rails in a continuous integration environment, you'll join our team of developers building the next-generation of customer engagement systems for federal service agencies.

Technical Skills:
• 2+ years' experience with Linux/Unix
• 4+ years of recent experience developing and implementing software solutions using Java
• 3+ years of experience in using and managing change management tools, Git, Subversion, TortoiseSVN, and build server software (Jenkins/Hudson/Bamboo)
• 2+ Amazon Web Services Integration    

Minimum 4+ years of experience and/or Bachelor's degree or higher

• 2+ years' experience with Ruby on Rails
• 4+ years of web based GUI development
• 3+ years' experience of JavaScript
• 2+ years' experience with HTML
• 3+ years of database experience with Oracle, Hibernate, PostgresQL
• 2+ years of experience working in an agile environment 
• 3+ year of Spring, RESTful and SOAP-based web services 
• 3+ years' experience operating in a VM/Cloud environment

Experience with the following technologies:
• Automated Testing
• Solid understanding and working experience with Git branching and merging
• Understanding of continuous integration and deployment best practices 
• Working experience with code quality inspection tools (e.g., Sonar)
• Working experience with monitoring systems, continuous integration systems, middleware & database components with Puppet & Chef 
• Working knowledge of TDD and automation test scripts
• Prior success in deploying to production
• Strong verbal and written communication skills, with the ability to work effectively across multiple teams and government organizations
• Understanding of  HTTP/S and related protocols
• Experience with other open-source components a plus, including Gradle, Activiti / jBPM, jQuery, MuleSoft, Geb and Spock
• Experience with a wide variety of testing tools and techniques, ex. JUnit
• Experience with Functional Testing, Integration Testing, System Testing, and User Acceptance Testing phases
• Experience with managing software in a DevOps environment, to include troubleshooting build pipeline issues and managing deployments/hardware in local, test, and production environments
• Ability to work in a fast paced, constantly changing Agile 

Job Responsibilities: 
• Work with product owners and team lead to interpret feature requests and develop software in iterative design/build/test cycles using an Agile development process
• Tasked with designing and developing the business's infrastructure architecture as well as developing automated scripts meant for building development and production environments
• Monitoring the business's site/software, ensuring standard compliance.
• Regularly check code into our continuous integration pipeline based on Gradle, Git and Jenkins to incrementally build our overall system and get immediate feedback on build performance
• Develop and expand unit and integration tests which will be automatically run by the build pipeline for developer feedback using JUnit
• Assists in resolving production support problems. Develops and suggests alternative approaches to resolving problems.
• Mentors junior member on the team
• Enforce standards and best practices
• Proactively communicates with the development and management to anticipate configuration management issues/processes
• Proactively seeks opportunities to implement improvements to internal team processes
• Contributes to an atmosphere of cross-functional teamwork within the organizations Agile project lifecycle

Education Level:
Mandatory: Bachelors Degree in a complimentary discipline
Preferred: Bachelors Degree in Computer Science or Master's Degree in a technical or business discipline