C++ Firmware Engineer
NetApp - Boulder, CO

This job posting is no longer available on NetApp. Find similar jobs:C++ Firmware Engineer jobs - NetApp jobs

Job Summary:
From the newest ideas in cluster computing to the latest web framework, NetApp software products embrace innovation to deliver compelling solutions to our business.

As a Software Engineer you will work as part of a team responsible for participating in the development, testing and debugging of operating systems and embedded firmware that run NetApp storage applications. As part of the Research and Development function, the overall focus of the group is on competitive market and customer requirements, supportability, technology advances, product quality, product cost and time-to-market. Software engineers focus on enhancements to existing products as well as new product development within Agile development teams.

This position requires an individual to be creative, a quick learner, driven to produce results and demonstrates the ability to lead small teams or projects,

Essential Functions:
  • Work on implementation and verification of systems/subsystems
  • Responsible for providing support in development and testing activities of other engineers that involve several interdependencies
  • Coding
  • Designing
  • Testing and/or Unit Testing
  • Test automation
  • Debugging
  • Reliability
  • Performance analysis
  • Critical and/or high visibility customer support
  • Provide team and project technical leadership within Agile development teams
  • Participate in technical discussions within the team and with other groups within Business Units associated with specified projects
  • Willing to work on additional tasks and responsibilities that will contribute towards team, department and company goals
  • Provide guidance and mentoring to more junior engineers Job Requirements Job Requirements:
  • Significant experience in the design and development of embedded systems is required.
  • Experience with, and very strong knowledge of PC system architecture is preferred.
  • Hands-on experience with BIOS or other platform initialization firmware is preferred.
  • Programming languages are primarily C/C++, some assembly, and various scripting languages.
  • Programming environment is Windows, UNIX, and embedded tool chains.
  • Experience in large software development environments, system bring-up, ICE debuggers, GDB, GRUB, protected mode programming, and X86 architectures a plus.
  • Candidate must be able to work within a team environment and interface with other areas.
  • Candidates are expected to take ownership of their tasks and be able to execute with minimal supervision.
Essential Skills:
  • Experience developing embedded applications and drivers in C or C++.
  • A strong understanding of, and a fundamental interest in, programming at the hardware – firmware level. Familiarity with device drivers.
  • Familiarity with electronic hardware, schematics, device specifications, an understanding of digital and analog circuit fundamentals.
  • Working knowledge of Microsoft Word, Excel, Wiki, etc. for creating documentation.
  • Able and willing to apply corporate coding standards and follow development processes.
  • Able to deliver creative and innovative approaches to problem solving.
  • Must have embedded C/C++ and low-level programming experience, including the ability to step through ASM level code with ICE’s / debuggers.
  • Strong communication skills.
  • Ability to work collaboratively in a diverse team environment
  • Able to meet aggressive goals and deliver high quality solutions.
  • Strong aptitude for learning new technologies and tools.
  • We are looking for excellent debugging skills, and the ability to quickly diagnose and correct system defects at both the hardware and firmware level based on a significant amount of related experience.
Preferred Skills:
  • Our team values those with a creative touch. The ability to think through complex issues and convert them into solid product implementations is needed.
  • Experience with scripting languages such as Perl, etc.
  • Past development experience with Phoenix or AMI BIOS.
  • Detailed knowledge of PC file systems, boot loaders, GRUB, etc.
  • Knowledge of Network fundamentals. Education and Experience Education/Experience:
  • A minimum of 6 years of experience is required. 8+ years of experience is preferred.
  • A Bachelor of Science Degree in Electrical Engineering or Computer Science, or a Master Degree; or equivalent experience is required.
  • Demonstrated ability to have completed multiple, moderately complex technical tasks.
  • Demonstrated competency in writing well-structured and functional code and documentation.
  • A stable work history indicating on the job successes. Posting Category Information Technology Full time / Part time Full-time Posting Location USA - Colorado - Boulder Requisition Number 22094BR

About this company
129 reviews
Careers at NetApp At NetApp, your expertise is what drives our growing success NetApp is the ideal place to give your career a boost....