Full Time Employee Contractor
ManTech is looking for Senior Developer who can guide application development teams through all phases of a cloud application migration life cycle. This includes analyzing existing application code, mapping code components to cloud native services and determining the best approach to use for migrating applications to cloud environments. This position also includes working to help choose the proper cloud platforms and services and performing all the application refactoring involved in the cloud migrations.
Candidates are expected to deliver high-quality code in a timely manner, as well as manage multiple phases of the migration life cycle (design, develop, deploy). They will also be responsible for requirements gathering, software refactoring design, development, and testing.
Candidates must be highly proficient in common coding languages specifically JEE and object-oriented programming, including software design and design patterns. They must also be proficient with standard development tools, including Maven, ANT, JUnit and popular IDEs. Proficiency with open source frameworks such as Spring and Hibernate is also a plus.
Our optimal candidates must be customer savvy and be capable of working in a team approach to execution and possess effective written and verbal communication skills. Candidates should be willing to learn other development platforms and motivated to learn new technologies.
The Developer will serve as a member of Agile Development, focusing on the development of correct and well-documented code while participating in all activities of the delivery lifecycle, including analysis and design. Ideal candidate would be someone who has experience in building digital assets library on AWS for different image formats and video formats.
Act as Senior lead on engagements, including requirements gathering, design, development, and testing
Produce high-quality, modular, reusable code that incorporate best practices
Mentor junior team members
Accurately report issues and status to project management
Required Experience / Skills :
· Completed at least five full professional software engineering projects across multiple platforms
· Have core Java expertise (JDK 7+)
· JEE expertise, including JSP / Servlet, JDBC and JMS
· Extensive experience with software design fundamentals and design patterns
· Proficiency with computer networking, Windows and Unix fundamentals
· Understanding of UML diagrams
· Experience with build tools (e.g., Ant, Maven, Gradle)
· Experience with CI/CD pipeline technologies
· Experience with project management tools, such as issue trackers (e.g., Jira, Bugzilla, FogBugz)
· Understanding of Service Oriented Architecture and Web Services Architecture
· Experience working with open source frameworks (e.g., Spring, Hibernate)
· Experience with templating engines (e.g., JSF, Velocity, FreeMarker, Thymeleaf, Mustache)
· Significant experience with tuning and refactoring code, and assessing the impact of architectural decisions on performance and scalability
· Experience with deploying, configuring and tuning common application servers and packages in cloud environments
· Experience with relational database modeling and creating advanced SQL queries / procedures
· Source control experience with Git / Subversion (e.g., branching, merging)
· Experience with cloud hosting platforms (e.g., Amazon Web Services, Azure, Google, OpenShift)
· CompTIA Secuirty+ Certification
Desired Additional / Skills :
· Experience with alternate scripting languages (e.g., Python, Perl, PHP, Groovy, Ruby)
· Strong enterprise integration experience, including experience with Middleware solutions
· Experience with a major Content Management System package (e.g., Drupal, etc.)
· Familiarity with Unix / Linux platforms
· Experience with a major or JEE-based enterprise search engine (e.g., Fast, IDOL, Solr / Lucene)
· Familiarity with non-relational / NoSQL databases (e.g., MongoDB, Couchbase)
Bachelor?s Degree preferably in Computer Science