Software Engineer Embedded Systems II
Listed on 2026-09-14
-
Software Development
Embedded Systems/ Firmware/ IoT, Unix/Linux, Software Engineer, Embedded Software Engineer
Meet the Team
Join a vibrant community of passionate professionals from around the world, working together in Engineering, IT, Supply Chain, Customer Experience, Security & Trust, and more. Our team brings diverse perspectives, skills, and backgrounds—united by a shared commitment to innovation and making technology accessible for everyone.
Here, you’ll collaborate with dedicated colleagues on exciting projects in cloud, mobile, desktop, and security. No matter your role, you’ll have the chance to learn, grow, and make an impact—building solutions that help people connect, learn, and thrive in new ways.
Together, we’re shaping the future—one idea at a time.
Your ImpactAs a Software Engineer Embedded Systems II, you will take ownership of designing, developing, and optimizing high-performance embedded software, firmware, and low-level platform features. Collaborate with cross-functional engineering teams to build resilient device drivers, kernel components, and hardware-software interfaces that power mission-critical platforms and intelligent connected systems. Architect and implement robust system-level test automation and diagnostic tools using Python and modern CI/CD pipelines to validate complex platform interactions and ensure product reliability.
Apply systems programming expertise to diagnose intricate platform-level issues, optimize memory and CPU performance, and support production triage. Success in this full-time role means independently delivering resilient, scalable embedded software and driving technical excellence across the entire software development lifecycle.
Meet one of the following (completed within the past 3 years or expected to be completed within the next 12 months):
- A Master's degree with 0 years of work experience;
- Bachelor's degree with 2 years of work experience;
- An educational or workforce development program (e.g., Associate’s, Apprenticeship, Boot camp, or Certification) with 3 years of work experience;
- High school diploma (or equivalent) with 4 years of work experience.
Qualified education and work experience should be in Computer Science, Computer Engineering, Electrical Engineering, Software Engineering, or a related field.
Strong proficiency in C or C++ systems programming, with practical experience developing software in embedded Linux, RTOS, or POSIX-compliant operating system environments.
Deep understanding of operating systems concepts, multithreading, concurrency, memory management, and low-level hardware-software interfaces.
Familiarity with standard software development workflows in Linux environments, debugging tools (e.g., GDB, Valgrind), and Git version control.
Hands-on experience developing low-level device drivers, kernel modules, Board Support Packages (BSPs), or bootloaders (U-Boot, UEFI).
Demonstrated knowledge of networking principles, layered communication architectures (TCP/IP, OSI model), or routing and switching protocols (e.g., Ethernet, BGP, OSPF).
Experience writing automation tooling or test frameworks in Python or Bash, integrated with modern CI/CD automation pipelines (e.g., Jenkins, Git Hub Actions).
Familiarity with hardware bring‑up, hardware‑in‑the‑loop (HIL) validation, or lab instrumentation (logic analyzers, oscilloscopes, JTAG debuggers).
At Cisco, we’re revolutionizing how data and infrastructure connect and protect organizations in the AI era – and beyond. We’ve been innovating fearlessly for 40 years to create solutions that power how humans and technology work together across the physical and digital worlds. These solutions provide customers with unparalleled security, visibility, and insights across the entire digital footprint.
Fueled by the depth and breadth of our…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).