Software Engineer
Marvell
About Marvell
Marvell’s semiconductor solutions are the essential building blocks of the data infrastructure that connects our world. Across enterprise, cloud and AI, automotive, and carrier architectures, our innovative technology is enabling new possibilities.
At Marvell, you can affect the arc of individual lives, lift the trajectory of entire industries, and fuel the transformative potential of tomorrow. For those looking to make their mark on purposeful and enduring innovation, above and beyond fleeting trends, Marvell is a place to thrive, learn, and lead.
Your Team, Your Impact
The Optical Digital Signal Processing (ODSP) PHY SW Team works on Marvell's DSP products used in pluggable optical modules. These chips form the backbone of the internet, moving data within data centers, between data centers, between cities, and even continents over high bandwidth optical fibres. Marvell is the market leader in direct-detect optical DSPs, making chips to fit every application and use case from 100G to 1.6T. These products are in every major cloud data center and AI cluster around the world. Even the data used for this job description has traveled through many of Marvell's DSPs to reach your computer, and our products are a key part of the biggest AI clusters that power all the latest generative AI projects. Check out our products https://www.marvell.com/products/pam-dsp.htmlThe SW team owns all the SW components for the chips, including embedded FW, customer SDK, lab scripts, and GUI applications to interface with the chips. This team is a critical part of the product development flow from pre-silicon simulation, post-silicon lab bring-up, to field deployment. We're the go-to group for getting things done, whether in the field or the lab.
What You Can Expect
Developing Python scripts for testing, data collection and diagnostics.
Developing embedded C firmware for controlling PAM4 DSP .
Taking an idea from concept through design, review, implementation, testing, and release to customers.
Work on mission-critical features for top-tier cloud customers.
Debug difficult issues, drive to root causes with HW/SW teams, and follow up with Jira tickets to get bugs resolved.
Develop python test scripts to configure, control, and get status from multiple DSP HW platforms for improving firmware stability
Implement a new temperature tracking algorithm for a DSP/analog control to improve performance when device temperature changes
Add new debug functionality to the current firmware architecture
Breaking up a firmware routine into sub-routines with a coordinating finite state machines to manage tasks in parallel (bare metal C programming)
Optimizing subroutines to make the best use of a multi-core MCU architecture
Improve error management flow and reports generated by the firmware
Implement and test serial interface for debug tracing and error reporting (UART driver)
Scripting for system performance analysis of a customer's prototype optical module
You will gain experience with:
Software development cycle
Infrastructure configuration and management
Software regression planning and execution
Linux- and Windows-based development
Continuous Integration (Jenkins) methodologies
Python, bash, and make scripting and automation
Source code management (git)
What We're Looking For
Candidate must have completed a BS/MS degree in Computer science/Electronics Engineering or related technical field(s)
Experience in C and Python.
Software development experience in embedded firmware environments based on C/C++.
Excellent debug capability and problem-solving skills
Experience in data collection and analysis.
Understanding the fundamentals of microcontroller architecture (ARM, RISC-V architecture a plus).
Understanding of fundamental networking from the OSI model, emphasizing the PHY up to the data link level.
Must be curious and driven to learn more about this complicated field.
Good verbal and written communication skills in English and Italian.
Good attitude and ability to interact with remote teams.
Preferred Requirements:
Basic understanding of how a processor interacts with memories and peripherals
Experience with the software development flow, from issue tracking (Jira), SCM (gitlab), design & code reviews (also gitlab), continuous integration (Jenkins), and regression testing
Knowledge of Digital Signal Processing
Understanding of DSP concepts (equalizers, filters, ADC, DAC, FFE, DFE, PLL) and PAM modulation
Familiarity with closed and open loop control algorithms
Familiarity with the fundamentals of telecommunication and signals theory
Knowledge of git, Linux, makefiles, gdb, IDEs, and bash
Additional Compensation and Benefit Elements
With competitive compensation and great benefits, you will enjoy our workstyle within an environment of shared collaboration, transparency, and inclusivity. We’re dedicated to giving our people the tools and resources they need to succeed in doing work that matters, and to grow and develop with us. For additional information on what it’s like to work at Marvell, visit our Careers page.
All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, sexual orientation, gender identity, disability or protected veteran status.
#LI-SJ1