The Senior Software Engineer performs analysis, design, programming, testing, installation, and maintenance of the Company's Internet applications. The incumbent will assist the development team in providing comprehensive support for existing and new applications and offer expertise regarding methods, standards, and technical considerations for software applications, and will have a lead role in designing application development software. The incumbent will work with other senior developers and architects to gain consistencies on project development execution, delivery, and practices. The incumbent will also act as a technical lead, and mentor junior developer(s).
- Analyze business and computer problems and lead system design.
- Design, code, test, install, and maintain Web and Java/Web Service programs.
- Write clear, concise system documentation.
- Provide production support for Web and Java/Web service applications.
- Act as technical lead and mentor for junior developer(s).
- Enforce and drive execution of Agile application development practices on project team and enterprise level.
- Work with other senior developers and architects to gain consistencies on project development execution, delivery and practices.
- Collaborate in a well integrated environment to deliver well thought out solutions.
- Collaborate with other service line development teams to provide guidance, expertise and support for cross service initiatives and as needed.
- Engage the business to understand business issues and describe technical issues/solutions in business terms and business impact.
- Contribute to Proof of Concepts on new technologies.
- Mentor junior team members.
- Position may be required to perform other duties as required.
These essential functions are representative of those that must be met by an employee to successfully perform the job. Reasonable accommodations may be made to enable individuals with disabilities to perform these essential functions.
- 10+ total years of development experience, which includes full life cycle development, web development and Web Service development.
- 6-8 years of experience with web development using Java and SQL, as well as UI development with at least one of the following: JSF, ADF, JSP, PrimeFaces, Angular.
- Demonstrated practice with Spring and Hibernate frameworks, or some equivalent framework, and multi-tier architecture.
- Database development experience using Informix, Oracle, MySQL, and/or Sybase.
- Excellent written and verbal communication skills.
- Strong organizational skills, including the ability to quickly resolve problems and work with little supervision.
- Strong analytical skills and attention to detail.
- Strong object oriented analysis, design, and development skills.
- Agile experience, with an emphasis on Scrum and XP practices.
- Production supportexperience in an application development environment.
- Live within a commutable distance of Herndon, VA.
- Experience with:
- Adobe LiveCycle development.
- A COTS reporting tool, such as Oracle BI or JReport.
- Experience with Tomcat or Weblogic server installation and administration.
- Experience in developing web applications using frameworks, such as JSF and Spring Batch.
- Experience working with off shore teams.
- Familiarity with a Unix environment, LINUX preferred.
- Knowledge of C and embedded SQL.
- Competent with Oracle JDeveloper.
- Use of a computer terminal and/or laptop computer for 8 or more hours a day.
- Use of a copy machine and telephone.
- Frequently required to sit for 7 or more hours per day in close proximity to others in an open office environment.
- Vision abilities include close vision and the ability to adjust focus.
- Occasionally required to use hands and fingers to operate, handle, and reach.
- Travel via car and airplane when needed.
- Must be able to support occasional after hours and weekend production deployments.
Bachelor of Science degree in Computer Science, Information Systems, or related field. A combination of education and experience, including through military service will also be considered.