Mid-Level Software Developer (Java, C++, Python)
- In this position, the developer will provide GUI support to an existing Mission Management team. The developer is responsible for:
- Creating visualizations for operators, analysts and mission cognizance
- Correcting faults
- Improving performance
- Developing enhancements
- Experience working in an Agile environment.
- Design, develop, implement, unit test, and document client and server applications using programming languages such as but not limited to C and C++, Java/J2EE and scripting languages such as but not limited to Perl, Vscript, VBscript, Python and SQL.
- Contribute to the specification and development of technical interfaces in accordance with the architecture.
- Work with modeling & simulation engineers to develop metrics for performance modeling.
- Develop database support for “front end” applications to include ClearQuest and ClearCase.
- Develop applications that utilize XML (eXtensible Markup Language).
- Develop and enhance applications using the following: CGI-Perl, Apache Ant, TOMCAT, Java, J2EE, Hibernate, DHPC, EJB, JAF, Java applets, Java logging, Java IO/NIO, Java patterns, Java runtime proxy interface, Java security, Java XML parsing (DOM, SAX), JDBC, JBOSS, JMX, JNDI, LDAP, Multi-threaded applications, NTP, ODBC, RMI, SOAP/XML RPC, Servlets & JSPs, SOAP, WSDL, XML, XPath, XSD, XSLT, BEA Weblogic Server/Portal, Commons Logging, Eclipse, JUnit, AJAX, SPARQL, Spring, and Log4j related applications and technologies.
- Develop and enhance applications using DBVisualizer, DreamWeaver, Subversion, PowerDesigner, and Documentum products.
- Develop, support, and enhance applications using agent technologies.
- Translate data and semantic (logical or conceptual) data models into physical implementations.
- Develop, design, and implement data repositories using Resource Description Framework (RDF) technologies.
- Develop, enhance, and provide support for Sybase and Oracle database applications.
- Develop, enhance, and provide support for applications using software engineering best practices.
- Develop, enhance, and provide support for applications in the Linux, Solaris, UNIX and Windows development environments.
- Develop GUIs that are robust and can be used across multiple platforms and operating systems.
- Develop applications that are capable of functioning in PKI, VPN, and IPSEC environments.
- Decouple front-end developed GUIs from back-end database applications such that changes in database schemas and structures result in minimal changes in developed GUIs.
- Develop client and server applications for LINUX, Solaris, and Windows environments.
Technical Skills Required:
- Ability to understand maintain existing software written in ExtJS 4.x
- Experience writing/maintaining complex Single Page Apps in a variety of web frameworks including ExtJS and Ember
- Knowledge utilizing AJAX calls and manipulating the returned JSON
Special Technical Skills Desired:
- Helm Charts
Minimum Experience Required:
- A firm understanding of modern computer programming with a minimum of 10 years’ experience in programming and providing direction for the design and development of application software for complex systems; software testing as well as solving varied software related problems; and generating and reviewing software design for accuracy, completeness and appropriateness in light of objectives, budget and schedule.
- 10 years’ experience with programming using the modern software environments listed in section Labor Category Requirements.
- A Master’s or Bachelor’s degree in Computer Science, will not apply toward the 10 years of experience.
- TS/SCI with Polygraph Required