Software Engineer

Washington, District Of Columbia
Sep 12, 2014
Dec 12, 2014
Full Time

PRINCIPAL ACCOUNTABILITIES: Under the general direction of the System Manager the incumbent's accountabilities include, but are not limited to, the following:

Leads a mix team of software engineers in the design, development, and implementation of the multiple applications across multiple platforms, the planning of resource/time allocations for current and projected development needs,   diagnosing production problems, and the new technology evaluation and technical prototypes. Responsible for the quality project deliveries. Provides project management regarding all technical aspects of implemented projects which includes: keeping in line with established budgets and timeframes, training end users on the operational procedures of the system, and providing technical guidance to less experienced staff during implementation.

Performs architecture design for small to medium size of the projects, leads the detail technical design, coding, code review and testing cross teams on multiple platforms and creates efficient and maintainable new applications. 

Estimates the technical costs of projects for clients and project managers, confers with clients to identify requirements (e.g., data, information needs, processing, specific output, functional and development of test data), and determines their desired outcomes in order to formulate the design of the system and/or offer alternative solutions in a timely manner.

Proactively analyzes and reviews emerging technologies, changes in the Insurance/Healthcare industry and the business functions of various clients, in order to determine if the advanced applications fit the needs of changing strategies, goals and objectives (develops and maintains technical knowledge through training, classes, …)

Mentors new or junior staff members on business knowledge, system peculiarities, and complex technical issues.
This position is also subject to being "on call" for emergency situations requiring immediate resolution. 

Required: This position requires a BA/BS in computer science or equivalent experience and 10+ years of industry experience developing in object-oriented programming language. Specific requirements include, but not limited to:
Proven previous experience with software architecture design with open mind to pick up new architecture model
Strong technical leadership and project management skill
Knowledge of software development best practices (RUP, XP, Agile)
Excellent experience with object oriented analysis and design patterns/techniques with emphasis on Java/J2EE technology
Minimum 5+ years of extensive hands on experience with Java, J2EE, EJB, JSP, JDBC, Hibernate, JMX, JMS, Log4J, AJAX, JSF.
Wide breadth of knowledge across many Java Open-Source technologies including Ant, Struts, Spring, XML parser technology, SOA based infrastructure,  JUnit and  HTTPUnit
Wide breath knowledge of J2EE applications servers (WebSphere, WebLogic, JBoss,…)
Previous experience with Workflow and Rules Engine
Excellent application performance tuning and trouble shooting skills
Experience with RDBMS (DB2, Oracle or MS SQL) 
Familiar with UML and Use case
Experience with Design patterns
Experience with SOAP, RESTful

Abilities/Skills: Candidates should have proven technical leadership experience to lead multiple medium to large projects and experience working with teams and show a propensity in dealing with the user community.  Technical expertise with claims, enrollment, sales, marketing, or provider systems preferred. Flexibility is essential to this position (candidates should be willing to learn new technologies, to implement new processes, and to take instruction).
This position will require strong background of design, development and analytical (i.e. requirements gathering) skills, as well as the ability to learn new technologies quickly based on prior experiences with similar tools and an understanding of infrastructure. The candidate must be able to able to work independently, assist team members in their development strategies, prepare report to track progress as required, conduct training, and prepare training materials as required. Good organizational and documentation skills will be essential in ensuring developed source code can be interpreted by other members of the development team. Superior written and verbal communication skills and the ability to present technical terminology to internal clients of all levels and some external vendors will be extremely helpful in moving any and all projects forward.