1+ months

Senior Software Engineer - Switching Platforms

Cisco Systems Inc.
San Jose, CA 95113
  • Jobs Rated
    8th

Meraki Software Engineers breathe life into our cloud-managed networking devices, which range from switches, routers, and wireless access points to desktop phones and security cameras. We leverage real-time telemetry from thousands of deployed networks spanning the globe to continuously improve the performance and stability of our products.

Platform bring-up Engineers take the lead in building new Meraki products by integrating everything from bootloaders to web servers on prototype hardware. Our device firmware is built on Linux and open-source software. We work individually and in small teams to release several new products each year.


As a Senior Embedded Engineer, you will focus on the following:

  • Own projects from block-diagram concepts, to prototype boards that dont boot, all the way to shipping product.
  • Collaborate with our Hardware Engineering team on component selection and high-level architecture for new Meraki products.
  • Collaborate with our manufacturing partners to develop secure, reliable, and scalable manufacturing processes.
  • Integrate vendor board support packages and software development kits with our firmware and build system.
  • Develop, port, and debug Linux device drivers.
  • When things dont go quite as planneda board doesnt boot, an LED doesnt light, a fan doesnt spinuse a JTAG debugger or logic analyzer or work with the hardware team to debug the problem.
  • Collaborate with other Platform Bring-up Engineers across product teams to continually improve our firmware design, development, and deployment practices.

You are an ideal candidate if you:

  • BS/MS in Electrical Engineering, Computer Science or equivalent experience
  • Have 5+ years advanced programming skills in C and/or C++ for operating system kernel & systems development.
  • Have solid experience with ethernet switching chipsets (i.e. Broadcom, Marvell, etc.).
  • Have strong systems and networking foundational knowledge (systems architecture, memory hierarchy, storage subsystems, LANs, routing).
  • Have expert knowledge of embedded systems development concepts, including cross-platform development and build tools (GNU toolchain, OpenWRT, buildroot, Yocto), bootloaders (U-Boot, coreboot, UEFI), kernel configuration, device drivers, device trees.
  • Know common bus protocols like I2C, SPI, and MDIO.
  • Are comfortable using network protocol analyzers, logic analyzers, hardware debuggers, and source-level debuggers to troubleshoot problems at all layers of the stack.
  • Have experience reading schematics and data sheets.

Bonus points for:

  • Experience writing device drivers.
  • Upstreaming Linux patches.
  • Experience with multi-threaded or parallel programming.


Categories

Jobs Rated Reports for Software Engineer

Posted: 2019-05-17 Expires: 2019-09-08

Before you go...

Our free job seeker tools include alerts for new jobs, saving your favorites, optimized job matching, and more! Just enter your email below.

Share this job:

Senior Software Engineer - Switching Platforms

Cisco Systems Inc.
San Jose, CA 95113

Join us to start saving your Favorite Jobs!

Sign In Create Account
Software Engineer
8th2017 - Software Engineer
Overall Rating: 8/199
Median Salary: $100,690

Work Environment
Good
53/199
Stress
Very Low
24/199
Growth
Very Good
32/199
Powered ByCareerCast