**TS/SCI Clearance w/Polygraph Required**
Demonstrated in-depth experience with Java is required.
Software Engineer
The Software Engineer will perform software development activities as a member of an agile development team. Development includes the full range of turning agile stories into implementable concepts, through development, testing, and deployment of the new capabilities in this complex system. Following the BDD pattern, our developers are responsible for implementing robust testing leveraging DEVOPS automation and, where appropriate, use of test automation commercial tools. There are a range of opportunities for server-side business logic implementation as well as client web application and user interface (UI) development. Java, Python, embedded C/C++, Java cryptographic framework, XML, web UI and special purpose device programming opportunities are available.
Primary Responsibilities
The Software Engineer will be responsible for software development activities both individually and as a member of an agile team. The software engineer will actively participate in program increment planning and related team activities. The individual will analyze and study complex system requirements, use design software tools, provide support using formal specifications, data flow diagrams, and other accepted design techniques with the use of Computer Aided Software Engineering (CASE) tools and will use sound software engineering principles to ensure that developed code is modifiable, efficient, reliable, understandable, fault tolerant, and reusable. The individual will provide software process management and control throughout the coding portion of the software development process. Additionally, the individual will promote code reuse and cross-program collaboration while reducing maintenance costs by creating common functions and shared actions for developers and testers. The individual will engineer, author, tune and document automation scripts in a development environment and deploy to the test/production bench.
Basic Qualifications
- Must have demonstrated experience with Java.
- Experience or familiarity with multiple the following: Java/JEE, Python, C/C++, SQL, SOAP, WSDL, WADL, PERL, PowerShell, VBS, Eclipse, Postgres, Oracle, Jenkins.
- Experience with Web Application User Interface Development, knowledge of databases and structures, and/or experience working with JSON, HTML, XML, XSLT.
- Experience with technologies underlying cryptographic systems (symmetric and asymmetric cryptography, ASN.1 encoding, XML canonicalization, digital signatures)
- Experience developing on Windows, and/or Linux operating systems.
- Must have documented professional experience with web services.
- Must have a strong understanding of sound software development principles and practices.
- Must be able to plan and prioritize personal tasking and be able to communicate effectively verbally and in writing.
- Must be an independent thinker, capable of performing high quality work, both independently and with a team in a fast-moving environment.
Preferred Qualifications
- Bachelor's degree in Computer Science or a related discipline.
- Experience with the following: JEE (EJB, JPA, JTA, JAX-B, JAX-RS, JAX-WS), SQL, application servers (Tomcat, WebLogic, JBoss), scripting.
- Experience with high level requirements management including requirements decomposition, secure systems engineering and development, trade-off analysis, interface control, and testing and continuous integration.
- Experience in software development on Agile teams using Agile Developer practices such as Pair Programming, TDD, Refactoring, and ATDD.
- Experience with FITNesse, Mockito, Cucumber, Unified Functional Tester (UFT), Selenium.
- Experience with Behavior Driven Development (BDD).
- Secure Software development (i.e., Layer 7 Policy).
- Experience with the Scaled Agile Framework (SAFe) methodology, SAFe Agilest Certification, or experience as a member of an agile team.
- Additional experience in J2EE, Python, C/C++, SQL, SOAP, WSDL, Postgres, Oracle,Mongo, PowerShell a plus.
Equal Employment and Diversity
CyberCore has, on many occasions, expressed support and commitment to the principles of diversity and equal employment opportunity. It is CyberCore’s policy to recruit, hire, train, and promote individuals, as well as administer all personnel actions, without regard to race, color, national or ethnic origin, pregnancy, age, religion, disability status, sex, sexual orientation, gender identity and expression, veteran status, genetic information or any other characteristic protected under applicable federal or state law. CyberCore will not tolerate unlawful discrimination and any such conduct is prohibited. CyberCore is committed to ensuring that CyberCore’s workforce and volunteers reflect America’s diverse population. CyberCore knows that such diversity will enrich the company with the talent, energy, perspective and inspiration we need to achieve our mission.