EPAM is a leading global provider of digital platform engineering and development services. We are committed to having a positive impact on our customers, our employees, and our communities. We embrace a dynamic and inclusive culture. Here you will collaborate with multi-national teams, contribute to a myriad of innovative projects that deliver the most creative and cutting-edge solutions, and have an opportunity to continuously learn and grow. No matter where you are located, you will join a dedicated, creative, and diverse community that will help you discover your fullest potential.
We are seeking a Senior Software Engineer with expertise in C programming to join our team.
You will focus on enhancing DNS server software to improve its performance, scalability, and reliability. Your role involves working closely with cross-functional teams, developing new DNS features, and ensuring software quality through rigorous testing. If you have a strong background in systems-level programming and networking, this opportunity is for you. Apply now to contribute your skills to advancing DNS technology.
Responsibilities
-
Design and implement enhancements to DNS server software with emphasis on performance and scalability
-
Refactor and optimize existing code to increase maintainability and efficiency
-
Collaborate with cross-functional teams to establish technical specifications and project requirements
-
Develop new DNS features and extensions compliant with industry standards such as DNSSEC, EDNS(0), and IPv6
-
Debug and resolve software issues including performance bottlenecks and edge cases
-
Write high-quality, well-documented C code following best practices and coding standards
-
Conduct unit, integration, and system-level testing to ensure software robustness
-
Stay updated on the latest developments in DNS technology and networking protocols
-
Participate in code reviews and offer constructive feedback to peers
Requirements
-
7 to 11 years of experience in C programming with a focus on systems-level development
-
Strong understanding of DNS concepts, protocols, and architecture
-
Proficiency in networking protocols, including TCP/IP and UDP with network programming experience
-
Familiarity with Linux/Unix development environments
-
Advanced debugging and problem-solving skills using tools such as gdb and valgrind
-
Capability to work both independently and collaboratively in fast-paced settings
Nice to have
-
Experience with ISC Bind or equivalent DNS server software
-
Knowledge of advanced DNS features like DNSSEC, EDNS(0), and zone transfers
-
Familiarity with IPv6 and its impact on DNS
-
Skills in multi-threaded programming and concurrency
-
Understanding of software security principles and scripting languages such as Python and Bash for automation and testing
We offer
-
Opportunity to work on technical challenges that may impact across geographies
-
Vast opportunities for self-development: online university, knowledge sharing opportunities globally, learning opportunities through external certifications
-
Opportunity to share your ideas on international platforms
-
Sponsored Tech Talks & Hackathons
-
Unlimited access to LinkedIn learning solutions
-
Possibility to relocate to any EPAM office for short and long-term projects
-
Focused individual development
-
Benefit package:
-
Health benefits
-
Retirement benefits
-
Paid time off
-
Flexible benefits
-
Forums to explore beyond work passion (CSR, photography, painting, sports, etc.)