Back to Home

Key Responsibilities and Required Skills for MTS Software System Design Engineer

💰 $ - $

EngineeringSoftwareSystems DesignEmbedded Systems

🎯 Role Definition

We are seeking an experienced MTS Software System Design Engineer to own system-level architecture, design, verification and delivery of complex software-enabled products. The ideal candidate will drive cross-functional system requirements, architect scalable and secure software/hardware solutions, lead design reviews, define verification strategies, and work closely with product management, hardware engineering, QA and operations to deliver high-quality systems on time. This role balances hands-on technical leadership with strategic planning and customer-facing communication.


📈 Career Progression

Typical Career Path

Entry Point From:

  • Senior Software Engineer (Embedded / Systems)
  • Systems Engineer or Software Architect
  • Principal Engineer (software/hardware cross-functional)

Advancement To:

  • Principal/Staff Systems Architect
  • Engineering Manager / Technical Lead
  • Director of Systems Engineering

Lateral Moves:

  • Product Architect
  • Reliability / SRE Lead
  • Security Architect

Core Responsibilities

Primary Functions

  • Lead system-level architecture and design for multi-component software systems, translating product requirements into modular, testable, and maintainable architecture blueprints that include software, middleware, firmware and hardware interfaces.
  • Define and drive system requirements (functional, non-functional, performance, reliability, availability and security) by synthesizing stakeholder input, use cases and system constraints, ensuring traceability from requirements to implementation and tests.
  • Produce detailed technical documentation including architecture diagrams, interface control documents (ICDs), sequence diagrams, state machines and API contracts to enable cross-team implementation and integration.
  • Conduct system trade studies and feasibility analyses (performance, cost, power, latency) to recommend component choices, system topologies and design patterns that meet product constraints and roadmap goals.
  • Architect and implement robust inter-process and inter-node communication strategies (RPC, messaging, pub/sub, DDS, REST/gRPC) optimized for latency, throughput and reliability in both embedded and distributed environments.
  • Define end-to-end verification and validation strategies, generate system-level test plans, acceptance criteria and oversee system integration testing, fault-injection tests, and regression suites.
  • Drive CI/CD pipelines for system builds, tests and releases (including firmware, bootloader, OS images and application stacks), integrating automated system-level tests, hardware-in-the-loop (HIL) and simulated environments.
  • Own system performance tuning and capacity planning by profiling CPU, memory, I/O and network subsystems, identifying bottlenecks and proposing architecture or code-level optimizations.
  • Design and implement secure system architectures that incorporate defense-in-depth, secure boot, encryption, key management, secure update mechanisms and threat modeling to satisfy internal and regulatory security requirements.
  • Lead cross-functional design reviews and architecture governance, providing technical leadership, mentorship and clear decision-making rationale to align engineering teams and accelerate delivery.
  • Coordinate hardware-software co-design and interface verification during bring-up, ensuring drivers, device trees, firmware and BSP (board support package) integration meet system-level expectations.
  • Define observability and telemetry strategies for systems, specifying metrics, distributed tracing, logging, and alerting to support operational troubleshooting and SLO/SLA management.
  • Manage third-party and open-source component evaluation, licensing, hardening and integration, driving vendor selection and negotiating technical requirements for system interoperability.
  • Create prototypes and rapid experiments to validate architecture assumptions, measure trade-offs and inform development priorities; translate prototype learnings into production-grade designs.
  • Lead reliability engineering and fault-tolerance design, including redundancy strategies, graceful degradation, failover mechanisms and deterministic recovery procedures.
  • Establish system-level configuration, deployment and release management practices that support reproducible builds, rollback capability and environment-specific tuning.
  • Drive cross-team alignment on system interfaces and API evolution, establishing backward-compatibility policies, versioning strategies and migration plans to reduce integration risk.
  • Participate in customer and field-support escalations to diagnose system-level issues, reproduce problems in lab environments and drive corrective action plans to closure.
  • Define system-level metrics and KPIs (MTTF/MTTR, latency percentiles, throughput, error budgets), track them over time and present trends to product and executive stakeholders to inform roadmap decisions.
  • Mentor and grow junior engineers in system design best practices, architecture thinking, design patterns and documentation standards to build team capability in system engineering.
  • Ensure compliance with industry standards and regulatory requirements relevant to the product (safety standards, communications certifications, industry-specific regulations), coordinating with compliance and legal teams.
  • Drive continuous improvement of system development lifecycle, tooling, and processes (requirements management, model-based systems engineering, automated testing) to increase throughput and reduce defects.
  • Serve as a primary technical contact during pre-sales, RFIs/RFPs and customer architecture workshops, presenting system capabilities, constraints and integration guidance to prospects and customers.
  • Lead post-release root-cause analysis and blameless incident reviews for system-level failures, capturing lessons learned and implementing preventive engineering changes.

Secondary Functions

  • Support ad-hoc data requests and exploratory data analysis.
  • Contribute to the organization's data strategy and roadmap.
  • Collaborate with business units to translate data needs into engineering requirements.
  • Participate in sprint planning and agile ceremonies within the data engineering team.
  • Assist product managers with technical backlog grooming and system-level prioritization.
  • Provide input to cost-of-goods and manufacturability decisions from a system-design perspective.
  • Maintain up-to-date architecture diagrams and runbooks for operational teams.
  • Contribute to patent filings, whitepapers and technical publications that capture novel system solutions.

Required Skills & Competencies

Hard Skills (Technical)

  • System architecture and design: system decomposition, interface definition, trade-off analysis and design patterns for complex software-hardware products.
  • Embedded systems software: strong proficiency in C/C++ for firmware, device drivers and low-level middleware; experience with RTOS and bare-metal designs.
  • Modern software engineering: experience with Python, Go or Java for tooling, orchestration, test automation and backend services.
  • Linux systems engineering: kernel tuning, device tree configuration, bootloaders (U-Boot), kernel drivers and systemd/service management.
  • Distributed systems: design and operation of scalable services, state management, consensus, messaging (Kafka, RabbitMQ), and RPC frameworks (gRPC/REST).
  • Cloud platforms and services: hands-on experience with AWS/Azure/GCP for CI/CD, observability, container orchestration and scalable backend services.
  • Containerization and orchestration: Docker, Kubernetes, Helm and strategies for deploying hybrid embedded-cloud systems.
  • CI/CD and automation: Jenkins, GitLab CI, GitHub Actions, test automation frameworks, hardware-in-the-loop automation and reproducible build systems.
  • Observability and monitoring: Prometheus, Grafana, ELK/EFK stacks, distributed tracing (Jaeger/OpenTelemetry) and log aggregation at system scale.
  • Hardware-software integration: familiarity with board bring-up, serial/JTAG debugging, hardware interfaces (SPI, I2C, UART, CAN) and electrical constraints.
  • Performance profiling and optimization: tools and methodologies to profile CPU, memory, I/O and network; optimize latency-sensitive paths.
  • Security and secure engineering: secure boot, TPM/TEE, encryption, key management, vulnerability assessment and patching strategies.
  • Model-based systems engineering and requirements tools: UML, SysML, MATLAB/Simulink, DOORS or equivalent for requirement traceability.
  • Testing and verification: system integration testing, acceptance testing, stress/fault injection testing and automated regression frameworks.
  • Networking protocols: TCP/IP stack, wireless protocols (Wi-Fi, Bluetooth, LTE/5G), and domain-specific protocols as applicable.
  • Regulatory and compliance knowledge relevant to the product domain (e.g., telecom, automotive, medical, industrial).
  • Version control and collaborative workflows: Git expertise, branching strategies, code review and release management.

Soft Skills

  • Strong written and verbal communication skills for clear architecture documentation and cross-team alignment.
  • Leadership and influence: ability to drive technical decisions and mobilize teams without direct authority.
  • Systems thinking: holistic view of product behavior, emergent properties and long-term technical trade-offs.
  • Problem-solving and analytical mindset: data-driven decision-making with rigorous root-cause analysis.
  • Mentorship and team development: coaching junior engineers and promoting best practices.
  • Customer orientation: translating customer requirements into pragmatic, reliable system solutions.
  • Time management and prioritization under ambiguous, fast-moving project goals.
  • Collaboration and stakeholder management: working effectively with product, hardware, QA, operations and external partners.
  • Adaptability and continuous learning: staying current with new technologies, standards and industry shifts.
  • Attention to detail with a pragmatic focus on shipping high-quality systems.

Education & Experience

Educational Background

Minimum Education:

  • Bachelor’s degree in Computer Science, Electrical Engineering, Computer Engineering, Systems Engineering or related STEM field.

Preferred Education:

  • Master’s degree or PhD in Systems Engineering, Computer Science, Electrical Engineering, or related technical discipline; or equivalent industry experience.

Relevant Fields of Study:

  • Computer Science / Software Engineering
  • Electrical or Computer Engineering
  • Systems Engineering / Mechatronics
  • Robotics or Embedded Systems

Experience Requirements

Typical Experience Range:

  • 5–12+ years of professional experience in software systems design, embedded or distributed systems, with progressive responsibility for system architecture and integration.

Preferred:

  • 8+ years designing and delivering complex software-hardware products, demonstrated experience leading architecture for production systems, proven track record of system integration and verification, and experience influencing cross-functional roadmaps.