©2019 ProObject
Interested in matching your career to your job? Want to mix cutting-edge technology with challenging and rewarding work assignments?
ProObject’s culture is one of continual employee investment—we know that happy employees are engaged employees. Click to learn more
NIST Cybersecurity Compliance is not an option - it's a requirement! ProObject’s certified staff follow our unique CYBRX process to ensure that you are on the right track to cybersecurity compliance in just a few short weeks. - Contact us to get compliant!
Senior Level Software Engineer (Java, Full Stack, Linux)

Position Description:

  • Work in an agile development processes implementing features as defined by user stories. 2 week Sprints/3 Month Spins
  • Development using Java full stack
  • Primary responsible for creation and maintenance of the project databases

Labor Requirements:

  • Analyze user requirements to derive software design and performance requirements;
  • Design and code new software or modifies existing software to add new features;
  • Debug existing software and corrects defects;
  • Integrate existing software into now or modified systems or operating environments;
  • Develop simple data queries for existing or proposed databases or data repositories;
  • Make recommendations for improving documentation and software development process standards;
  • Develop or implement algorithms to meet or exceed system performance and functional standards;
  • Assist with developing and executing test procedures for software components;
  • Write or review software and system documentation;
  • Develop software solutions by analyzing system performance standards, conferring with users or system engineers; analyzing systems flow, data usage and work processes; and investigating problem areas;
  • Serve as team lead at the level appropriate to the software development process being used on any particular project;
  • Modify existing software to correct errors, to adapt to new hardware, or to improve its performance;
  • Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design;
  • Design or implement complex database or data repository interfaces/queries;
  • Oversees one or more software development teams and ensures the work is completed in accordance with the constraints of the software development process being used on any particular project;
  • Design or implement complex algorithms requiring adherence to strict timing, system resource, or interface constraints;
  • Perform quality control on team products;
  • Confer with system engineers and hardware engineers to derive software requirements and to obtain information on project limitations and capabilities, performance requirements and interfaces;
  • Coordinate software system installation and monitor equipment functioning to ensure operational specifications are met;
  • Implement recommendations for improving documentation and software development process standards

 Technical Skills Required:

  • Evaluating, defining, planning, designing, implementing, refining, and deploying database solutions in LINUX VM environments at the Enterprise and project levels.
  • Sizing (capacity planning), performance analysis and tuning, modeling.
  • Knowledge with parsing
  • Developing successful backup and recovery procedures on more than one program
  • Supporting the development of long-term architectural storage solutions based on customer business requirements and new development
  • Experience in resolving database issues and in creating new features/ functionality for existing database
  • Experience working on a big data team a plus
  • Good communication skills
  • Strong familiarity with Open Source technologies (Spring, Camel, Guava , etc)
  • Good understanding of PKI infrastructure (e.g 2-way, TLS, etc)
  • Expert in Agile Processes (former scrum master a plus), including Scrum, Kanban, and XP
  • Expert with Dev Ops practices (CI, Release Management, Monitoring , etc)

 Special Technical Skills Desired:

Candidates with these skills will be given preferential consideration.

  • Database experience with (MongoDb, Postgrese, Oracle, MySQL, etc) a plus
  • Experience with GWT, TOMCAT, JMS, GIT, Python, ELK stack
  • Good working knowledge of Linux/Unix and scripting such as Javascript, sh, bash, perl, and other scripting tools/language
  • Experience using JIRA, Confluence
  • Agile/Scrum methodology a plus
  • Developing middleware of presentation layer software
  • UI/UX design / development experience
  • Background in SIGINT or Cyber or NetDef or IA
  • Use of workflow orchestrators or rules processing engines such as DROOLS or Camunda or jBPM or Activiti
  • Use of serialization technologies is a plus. (e.g. Avro, Thrift, ProtoBuf)
  • Use of Messaging technologies (JMS, Kafka, others)
  • Use of Spring / SpringBoot
  • Experience developing and using REST services
  • Experience Agile processes (spins, sprints, retrospectives)
  • Experience Jenkins, Gradle, Maven, and/or Git

 Minimum Experience Required:

  • Fourteen (14) years’ experience as a software engineer in programs and contracts of similar scope, type, and complexity is required.
  • Twelve (12) years’ experience as a software developer
  • Three (3) years’ direct experience with Java developer
  • Bachelor’s Degree in Computer Science or related discipline from an accredited college or university is required.
  • Four (4) years of additional software engineering experience on projects with similar software processes may be substituted for a bachelor’s degree
  • TS/SCI with Polygraph Required
Previous Job Next Job