Credo is seeking a System Software Engineer to join the Applications team to help develop our SDK. The position will require developing software to control our diverse chip and IP products and the firmware running on them. You will work with internal engineers to use the SDK for internal chip testing/validation purposes. You will also interface with our customers to integrate and use the SDK in their own software stack. Additional responsibilities will be flexibly determined based off your secondary skills.
Responsibilities
- Familiarize with SerDes and IEEE ethernet Layer 1 functionality
- Develop C/python code for the SDK based on designer / engineer recipe code
- Coordinate with firmware team to define high-level interfaces for features
- Document functionality for both internal and customer users to use
- Interface with customers to integrate and debug issues with SDK in their software stack
- Write test code to validate SDK and firmware features
Basic Qualifications
- BS degree in Computer Engineering / Computer Science
- None to 5 years of experience
- Strong proficiency in C and Python (C++ optional)
- Teamwork and collaboration with other developers on the SDK team
- Cross-team communication for defining of requirements
- Basic understanding of the Posix standards for Operating Systems
- Familiarity in VCS such as git
- Testing framework such as pytest
- CI/CD
- Data science libraries (numpy, pandas, scipy)
Preferred Skills
- Masters degree in computer science or equivalent
- Networking and OSI Layer 1 / Layer 2 knowledge
- Mathematical background in Signal processing (Frequency Domain analysis, linear systems)
- Documentation tools such as doxygen, sphinx, or mkdocs
Pay Range: $90,000 – $130,000