Software Development Engineer
Design, code, test, develop and document application programs for complex computer systems
Analyze and perform modifications to and maintenance of highly complex operational programs and procedures
Document file designs and program logic
Analyze system and programming logic
Program clear and concise solutions
Write complete and detailed unit tests
Maintain project status documentation
Participate in functional and technical reviews
Participate and assist in technical training and development of other staff members
Provide technical guidance and assistance to more junior level developers and assist with technical documentation and code reviews
Assist in evaluation, selection, and prototyping of technical architecture
Assist in identifying process improvements and application enhancements
Bachelor's degree in Computer Science, Software Engineering, or a related field
3+ years of programming experience using Java, J2EE
Experience with concepts of Relational Database
Experience with Service Oriented Architecture and web services
Experience with XML and related technologies
Experience with Unit Testing
Strong analytical and problem solving skills required
Ability to handle multiple projects with rapidly changing priorities and deadlines.
Ability to interact with and accept direction from multiple managers and clients.
Ability to work independently
Excellent written and oral communication skills.
Strong database skills
Experience with Agile/Scrum development methodology.
Experience with Perforce and Eclipse
Knowledge of Test or Behavioral Driven Development (TDD/BDD)
Experience working in a cross domain environment involving Java and other Open Source platforms.
Experience with Tomcat.
Experience with SQL Server
Knowledge of Struts and Spring Frameworks.
Knowledge of Healthcare Information Systems
Familiarity with JIRA, Confluence, Bamboo, or Crucible a plus