Posted in

Principal Embedded Software Architect

Principal Embedded Software Architect

CompanyAnalog Devices
LocationAustin, TX, USA
Salary$Not Provided – $Not Provided
TypeFull-Time
DegreesBachelor’s, Master’s
Experience LevelSenior, Expert or higher

Requirements

  • Bachelor’s or Master’s degree in Computer Science, Electrical Engineering, or a related field.
  • 7+ years of experience in software architecture, with a strong background in hardware/software co-design for embedded systems.
  • Extensive experience working in the semiconductor industry or related fields (e.g., hardware/software co-design, FPGA, SoC development).
  • Proven expertise in designing and architecting software systems that integrate closely with semiconductor hardware.
  • Strong experience with embedded systems programming, including low-level firmware, device drivers, real-time operating systems (RTOS), and bare-metal development.
  • Proficiency in programming languages such as C, C++, and Python, with experience in embedded development environments.
  • Experience with FPGA, SoC design, ASIC development, or other semiconductor platforms, with an understanding of hardware/software interactions.
  • Expertise with debugging tools, such as JTAG, Logic Analyzers, and other hardware debugging methods.
  • Experience with hardware simulation tools such as Model Sim, Cadence, or similar, and working knowledge of hardware description languages like Verilog or VHDL.
  • Strong understanding of the software development lifecycle for embedded systems, including continuous integration, version control, and testing.
  • Knowledge of real-time systems, memory management, and performance optimization techniques for embedded platforms.
  • Ability to work independently and drive initiatives with minimal supervision. Demonstrated capability to challenge existing norms and push for continuous improvement across the organization.
  • Excellent communication and interpersonal skills, with the ability to engage with both technical teams and senior leadership effectively.

Responsibilities

  • Lead Change & Process Transformation: Proactively identify opportunities to improve and streamline how software and hardware are developed, focusing on process improvements, collaboration, and the integration of new technologies. Challenge existing workflows and introduce better practices that enhance the company’s ability to innovate and scale.
  • Hardware/Software Co-Design: Lead the design and architecture of systems that involve both software and hardware co-design. Collaborate with hardware architects and engineers to ensure that hardware and software components work seamlessly together, meeting performance, reliability, and power requirements.
  • Embedded Systems Design: Oversee the architecture of software for embedded systems, including low-level firmware, device drivers, and OS interactions, ensuring that software is optimized for resource-constrained environments and high-performance hardware.
  • Collaboration with Hardware Teams: Work closely with hardware teams to define system-level requirements and ensure that software solutions align with hardware design. Participate in hardware specification reviews, debug hardware/software integration issues, and optimize systems for performance and efficiency.
  • Strategic Alignment: Help shape the company’s software strategy and ensure alignment with broader organizational goals. Present high-level system architectures, technology strategies, and process improvements to leadership in a clear and impactful way.
  • Cross-Disciplinary Integration: Develop strategies and frameworks for integrating hardware and software throughout the product lifecycle. Ensure that both hardware and software development processes align with overall system objectives and quality standards.
  • Technology Strategy & Innovation: Stay ahead of technological trends in hardware/software integration, embedded systems, and semiconductor technologies. Introduce innovative tools, techniques, and methodologies to improve hardware/software co-design workflows.
  • Mentorship & Leadership: Provide technical leadership and mentorship to software engineering teams, fostering a culture of collaboration between hardware and software engineers. Advocate for best practices in embedded systems development, software architecture, and hardware integration.
  • System Optimization: Work on optimizing software performance for semiconductor platforms, including reducing power consumption, increasing throughput, and improving real-time processing capabilities.
  • Tools & Environment: Utilize and promote industry-standard tools for embedded system development, hardware/software co-simulation, debugging, and profiling. This includes tools for FPGA programming, SoC design, debugging (JTAG, trace tools), and simulation environments such as ModelSim or Cadence.
  • Documentation & Communication: Create clear, comprehensive documentation for software architecture, design choices, and integration methods. Communicate effectively with both technical and non-technical stakeholders, including hardware teams, architects, and product managers.

Preferred Qualifications

  • Familiarity with hardware/software co-simulation and virtual prototyping tools.
  • Experience working with IoT devices or wireless communication systems integrated with semiconductor hardware.
  • Knowledge of performance analysis and optimization techniques for embedded systems.
  • Experience with agile development processes, particularly in hardware/software development teams.
  • Previous leadership experience in a cross-functional team or managing large-scale hardware/software projects.
  • Knowledge of semiconductor design tools, EDA tools, and electronic design automation workflows.
  • Understanding of AI/ML integration with hardware in the semiconductor space, especially in performance-critical applications.