Java Developer II - Bethesda, MD

Location: Bethesda, MD


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. 

•    Participate with team of technical staff and business managers or practitioners in the business unit to determine systems requirements and functionalities needed in large/complex development project. 
•    Assess and develop high level design requirements for project and communicate in writing or in meetings with development team. Assess detailed specifications against design requirements. 
•    Write and review code done to advance application upgrade, extension, or other development. Analyze application for data integrity issues. 
•    Develop test protocols or plan for testing revised application and review test results 
Education 
•    Bachelor's Degree or equivalent required 


Minimum Experience 

•    Minimum 3 years of related work experience in software development 
•    Minimum 3 years of experience with full lifecycle of project development for Java Applications 


Specialized Knowledge & Skills 

•    Strong skills in core Java, server side Java technologies, and Spring frameworks 
•    Extensive experience in messaging middleware including EMS/JMS and application servers 
•    Extensive experience in software design, architecture, development and integration 
•    Solid knowledge of event processing models, multi-threading, enterprise integration pattern, Web Service and REST 
•    Ability to supervise and mentor junior developers on the team