Collaborates with appropriate stakeholders to determine user requirements for a scenario.
Drives identification of dependencies and the development of design documents for a product, application, service, or platform.
Creates, implements, optimizes, debugs, refactors, and reuses code to establish and improve performance and maintainability, effectiveness, and return on investment (ROI).
Leverages subject-matter expertise of product features and partners with appropriate stakeholders (e.g., project managers) to drive a workgroup's project plans, release plans, and work items.
Acts as a Designated Responsible Individual (DRI) and guides other engineers by developing and following the playbook, working on call to monitor system/product/service for degradation, downtime, or interruptions, alerting stakeholders about status and initiates actions to restore system/product/service for simple and complex problems when appropriate.
Proactively seeks new knowledge and adapts to new trends, technical solutions, and patterns that will improve the availability, reliability, efficiency, observability, and performance of products while also driving consistency in monitoring and operations at scale.
Qualifications
Required
Experience in software design and coding of Layer2/L3/L4 ethernet/IP networking packet forwarding and control plane processing functions within host OS or a programmable NIC or network switches and routers.
Strong programming skills in C or C++
Bachelor's degree in computer science or computer engineering, or related technical discipline AND 4+ years software development engineering experience
OR equivalent experience.
Preferred
Experience in developing networking software stack involving technologies such as Transmission Control Protocol (TCP), User Datagram Protocol (UDP), Remote Direct Memory Access (RDMA), RoCEv2 and Software Defined Network (SDN)
Experience in developing networking software on DPUs or programmable NICs or other hardware offload architectures.
Experience in developing technologies for reliable data transfer across network with efficient fabric utilization and deterministic latency.
CI/CD Experience: Knowledge of Continuous Integration and Continuous Deployment (CI/CD) practices for streamlined software development and deployment processes.
Scripting for Developer Tools: Proficiency in scripting languages to build and enhance developer tools, automating repetitive tasks and improving workflow efficiency.