About the job
About the Role:
Join PubMatic as a Senior Software Engineer, where you will design and implement cutting-edge, scalable, and low-latency DSP bidder features on our Activate platform. If you thrive in a creative, fast-paced environment and are passionate about building applications that handle millions of requests per second, we invite you to apply. We offer competitive compensation, excellent incentives, a collaborative culture, and abundant opportunities for professional growth.
What You Will Do:
- Create, develop, and maintain high-performance backend services using Golang in a Linux/UNIX environment.
- Implement best practices in software development and documentation, ensuring that designs meet requirements and deliver high-quality results.
- Exhibit self-direction and independence in your work.
- Take ownership of one or more functional modules and act as the point of contact for them.
- Write clean, modular, and loosely coupled code following established best practices.
- Engage in Agile development processes, including sprint planning, code reviews, and continuous improvement initiatives.
- Collaborate with teams to meet shared objectives.
- Showcase exceptional verbal and written communication skills.
- Be prepared to go the extra mile to achieve outstanding results.
We'd Love for You to Have:
- Over four years of development experience in Go within a Linux/UNIX environment; familiarity with C/C++ is a plus.
- Strong proficiency in implementing algorithms and utilizing advanced data structures to address computing challenges; a solid grounding in computer science principles is desirable.
- Experience in developing complex, scalable solutions.
- A knack for finding optimal solutions and generating innovative ideas.
- Excellent problem-solving capabilities.
- Familiarity with generative AI-based tools and IDEs for efficient work.
- A basic understanding of various models.
- Knowledge of OS concepts and practical experience in system programming, including multi-threading, multi-processing, and memory management.
- Ability to troubleshoot issues with existing features in a live production environment.
- Capability to write clean, modular, and loosely coupled code.

