Software Engineer

Kratos Space Training & Cyber
Orlando, United States of America
yesterday

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate

Job location

Orlando, United States of America

Tech stack

JIRA
Unit Testing
C++
Software Documentation
Communications Protocols
Computer Security
Computer Programming
Computer Engineering
Data Structures
Software Debugging
Linux
Embedded Software
Fault Tolerance
Hardware-In-The-Loop Simulation
Human-Computer Interaction
Supervisory Control and Data Acquisition (SCADA)
MISRA C (C Programming Language)
Language Modeling
Message Queuing Telemetry Transport (MQTT)
Office Suite
Real-Time Operating Systems
Regression Testing
OPC Unified Architecture
Requirements Management
Software Deployment
Software Engineering
Software Requirements Analysis
System Testing
Systems Integration
UML
Jama (Software)
Real Time Systems
Software Verification
GIT
Integration Tests
Information Technology
Process Control Systems
Software Version Control

Job description

Readiness Delivered. Kratos engineers and deploys technology and systems that move national security forward, with the cost, speed, and reliability that make readiness certain. We are a trusted partneridriven by doing the right thing and achieving maximum success for our customers, our partners and ourselves. Kratos has an exciting opportunity for aiSoftware Engineer I or II. TheiSoftware Engineerileverages expertise in Software Engineering principles, real-time programming, control system theory, and system integration methodologies to define, design, develop, test, and manage the complexities of real-time control software for mechanical, fluid, electrical, and safety systems.

  • Responsible for software requirements definition, development, communications (internal and external), and testing
  • Mentors and develops other engineers
  • Conducts requirements analysis to elicit, document, and manage the functional, performance, timing, safety, and non-functional requirements of real-time control software for fluid, electrical, and safety systems, ensuring robust interaction and adherence to relevant software development and safety standards (e.g., IEC 61508 and other applicable industry standards)
  • Develops and maintains detailed software design specifications, well-structured source code, and comprehensive technical documentation
  • Applies software modeling techniques (e.g., UML, state diagrams), simulation tools, and rigorous testing methodologies to analyze, verify, and optimize the structure, behavior, performance, and reliability of control software
  • Performs functional analysis to decompose high-level system control requirements into detailed software functions, modules, and tasks, allocating them to specific software components and defining clear interfaces with hardware (sensors, actuators, PLCs) for fluid, electrical, and safety control
  • Identifies and assesses potential software-related risks associated with development, integration, deployment, and operationiparticularly concerning timing constraints, resource utilization, system stability, fault tolerance, and safety integrity for fluid, electrical, and safety control systems.
  • Contributes to the integration aspects of real-time control software, including defining, developing, and managing software interfaces with physical hardware (sensors, actuators, I/O modules), other embedded software modules, communication networks, and Human-Machine Interface (HMI) systems
  • Develops and executes software verification and validation plans, defining the strategy and scope (including unit tests, integration tests, system tests, and regression tests) for ensuring the developed control software meets all specified functional, performance, and safety requirements, potentially utilizing Hardware-in-the-Loop (HIL) simulation and supporting system commissioning activities, Keyword: Unit Testing, Integration Testing, Debugging, Requirements Analysis (Software), Communication Protocols, Cybersecurity (for control systems), Version Control Systems, Agile/Scrum Methodologies, Linux

Requirements

  • Follows established software development procedures and adheres to relevant industry standards (e.g., IEC 61508 for functional safety, MISRA C/C++, or other applicable coding standards), and best practices for real-time software
  • Proficient with requirements analysis principles and methodologies as applied to real-time embedded software, including functional, performance, timing, reliability, and safety critical aspects for control systems
  • Experienced with real-time software design and development lifecycles, algorithm implementation, control logic programming (e.g., C, C++, PLC languages if applicable), data structures, and comprehensive software documentation
  • Knowledge of risk management processes related to software development, system integration, and operational reliability, particularly concerning timing constraints, fault tolerance, resource utilization, and safety integrity in control applications for fluid, electrical, and safety systems.
  • Strong computer skills, including proficiency with standard office software, high proficiency in programming languages such as C and/or C++ for real-time embedded systems, experience with version control systems (e.g., Git), and familiarity with development/debugging tools and environments for embedded control systems
  • BS degree in Software Engineering, Computer Engineering, Electrical Engineering, Computer Science, or a relevant technical field with significant software development experience focused on control systems
  • Minimum 3-5 years of experience in real-time software development for industrial control systems, with demonstrable experience in designing, developing, testing, and deploying software for the operational control of fluid systems, electrical systems, and/or safety-critical applications

Preferred Skills/Experience

  • Proficiency with Hardware-in-the-Loop (HIL) simulation platforms and methodologies for testing and validating control software
  • In-depth knowledge and practical experience with industrial communication protocols such as DDS, OPC UA, or MQTT, including protocol analysis and troubleshooting
  • Knowledge of cybersecurity principles and best practices for Industrial Control Systems (ICS) and SCADA environments (e.g., IEC 62443)
  • Experience with any combination of: Git, Jira, and Jama requirements management software
  • Knowledge and/or experience with relevant quality management systems (e.g., ISO 9001) and CMMC

#LI-Onsite

Benefits & conditions

Competitive salary based on experience and education

Kratos is valued for our ability to design and deliver leading edge, resilient solutions for aerospace communication, control, awareness and mission success across a continuum of offeringsifrom commercial to tailored custom solutions and integrated programs. Customers trust us to stay relevant and know we are in it for the long-haul. We bring both the capability and confidence that our customers value and depend on. And we always deliver.

Apply for this position