- Translate business requirements to technical specifications.
- Lead and contribute to technical elaboration sessions both internally and with clients.
- Investigate, analyze and correct complex reported defects in existing code and in new code.
- Create, document and implement unit test plans, scripts and test harnesses.
- Determine the appropriate UML artifacts and other technical documentation for the project.
- Establish all aspects of the development environment for new projects, including source code control and build processes.
- Analyze the deployed application and implement performance tuning enhancements.
- Participate in, lead and contribute to peer code and unit test reviews.
- Present training sessions to other developers in areas of specific expertise.
- Develop implementation plans and accurate estimates of effort.
- Lead other developers in small projects or sub-sets of work on larger projects.
- Contribute to and be able to lead team meetings.
Knowledge, Skills and Abilities
• Relational and Non-Relational Databases such as Oracle DB2, mongoDB, etc.
• JEE containers such as JBoss, Websphere, Tomcat etc.
• ORM tools such as Hibernate, OpenJPA, or other JPA based solutions.
• Eclipse or other Java IDE.
• Build tools such as Maven.
• RESTful webservices
• Demonstrates and facilitates professional communication skills by listening, writing, and speaking effectively.
• Strong analytical, research and problem solving skills. Pro-active ability to identify, assess, improve/refine and solve complex challenges priorities and responsibilities.
• Establishes and maintains solid interpersonal relationships with clients and FJA team.
• Effective facilitation, collaboration, negotiation and conflict resolution abilities
• Ability to create and conduct presentations in a professional and confident manner to a variety of audiences.
• Strong analytical, research and problem solving skills. Pro-active ability to identify, assess, improve/refine and solve complex challenges, processes and/or situations
• Flexible and able to thrive in a fast paced, high growth, team based environment while successfully handling competing and ever changing priorities and responsibilities.
• Creative self-starter with a passion for continuous learning and improvement.
People Leadership/Development Duties
- Report to a senior developer and/or development department manager
- May lead and take control of a certain project within the developer department.
Education, Certification and/or Formal Training
- Bachelor’s Degree in CS, Engineering Math or Science.
- Strong background in CS theory is a must, including data structures, algorithms, OOP and design patterns.
- Extensive knowledge in Java, proficiency in C++ and python is preferred.
- Knowing Test Driven Development or similar approach is preferred.
- Minimum 1 year required of software development.
- Health care insurance industry is a plus.
This job generally operates in a professional office environment. This role routinely uses standard office equipment such as computers/keyboards/mice, printers, phones, mobile devices, photocopiers, filing cabinets, fax machines, etc. The noise level in the office work environment varies from moderate to loud. When traveling to client sites, the employee may be exposed to various unknown work environments.
The physical demands described here are representative of those that must be met by an employee to successfully perform the essential functions of this job.
- Light work. Exerting up to 20 pounds of force occasionally, and/or up to 10 pounds of force frequently, and/or a negligible amount of force constantly to move objects.
- While performing the duties of this job, the employee is regularly required to talk or hear; sit; stand; walk; use hands to finger, handle or feel; grasp and/or reach with hands and arms; repetitive movements of the wrists, hands and/or fingers.
- Specific vision abilities required by this job include close visual acuity and ability to adjust focus to perform an activity such as: preparing and analyzing data and figures; transcribing; viewing computer monitor(s); extensive reading; and legally operate a motor vehicle.
This position may occasionally necessitate working additional hours and weekends outside of the employee's regular work schedule.
Possible local and/or national travel up to 10%.