Expoint - all jobs in one place

המקום בו המומחים והחברות הטובות ביותר נפגשים

Limitless High-tech career opportunities - Expoint

Microsoft Principal Software Engineer 
India, Karnataka, Bengaluru 
120467438

10.09.2024

As a Senior Software Engineer in the DPU Networking software team, you will design, develop, deploy and support networking packet forwarding and control plane functions that enable high performant data processing within various network endpoints in Azure data centers. You will work as part of a dynamic, multi-talented team of engineers from across the world. This opportunity will allow you to develop new solutions for the Azure fleet, participate in the design of cutting-edge networking solutions and hone your design and performance optimization skills.

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.
Responsibilities
  • 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.