Researches, designs, develops and/or modifies enterprise-wide systems and/or applications software.
Leads the research and development of new software products and applications on the leading edge of established knowledge and standards.
Conceives, designs, prototypes, and tests new methods, algorithms, and models.
Defines architecture requirements and performance standards to meet or exceed management and customer specifications.
Identifies and directs resolution of complex hardware/software interface issues.
Advises on machine characteristics that affect software systems, such as storage capacity, processing speed, and input/output requirements.
Prepares reports on analyses, findings, and project progress, and presents results to management and/or customer personnel.
Serves as the primary customer interface to resolve problems and ensure requirements are met on a timely basis.
Provides guidance and work leadership to less-experienced software engineers, and may have supervisory responsibilities.
May serve as a technical team or task leader.
May provide expertise to multiple projects and tasks.
Maintains current knowledge of relevant technology as assigned.
Participates in special projects as required.
Full lifecycle web application development experience
Experience with middleware products such as Apache and Tomcat
Experience with Agile development
Experience with DevOps/CI tools such as Git Hub, Puppet, CloudFormation or Jenkins
Experience with AWS offerings such as EC2, ELB, RDS
1. Designs, develops, codes, tests, and debugs complex new software products, or makes significant enhancements to existing software.
2. Researches and integrates design strategies, product specifications, development schedules, and user expectations into product capabilities.
3. Resolves complex hardware/software compatibility and interface design considerations.
4. Conducts investigations and tests of considerable complexity.
5. Researches emerging technologies to determine impact on application execution.
6. Provides input to staff involved in writing and updating technical documentation such as user manuals, system documentation, and training materials.
7. Troubleshoots complex problems and provides customer support for software operating systems and application issues.
8. Advises hardware engineers on machine characteristics that affect software systems, such as storage capacity, processing speed, and input/output requirements.
9. Prepares reports on analyses, findings, and project progress.
10. Provides guidance and work leadership to less-experienced software engineers.
11. May serve as a technical team or task leader.
12. Maintains current knowledge of relevant technology as assigned.
13. Participates in special projects as required.
Bachelors Degree in Computer Science, Engineering or a related technical discipline, or the equivalent combination of education, technical training, or work/military experience.
8-10 years of related software development experience.
Mid-level industry position
Herndon , United States