Track This Job
Add this job to your tracking list to:
- Monitor application status and updates
- Change status (Applied, Interview, Offer, etc.)
- Add personal notes and comments
- Set reminders for follow-ups
- Track your entire application journey
Save This Job
Add this job to your saved collection to:
- Access easily from your saved jobs dashboard
- Review job details later without searching again
- Compare with other saved opportunities
- Keep a collection of interesting positions
- Receive notifications about saved jobs before they expire
AI-Powered Job Summary
Get a concise overview of key job requirements, responsibilities, and qualifications in seconds.
Pro Tip: Use this feature to quickly decide if a job matches your skills before reading the full description.
We are seeking a highly skilled and motivated Senior C Developer with expertise in DNS to join our dynamic team.
This role involves working on a high-impact project to enhance and modernize DNS server infrastructure. The ideal candidate will possess strong systems programming skills, in-depth knowledge of networking protocols, and a passion for solving complex technical challenges.
Responsibilities
- Design, develop, and implement enhancements to DNS server software with a focus on performance, scalability, and reliability
- Refactor and optimize existing codebases to improve maintainability and efficiency
- Collaborate with cross-functional teams to define technical specifications and project requirements
- Develop new DNS features and extensions that adhere to industry standards such as DNSSEC, EDNS(0), and IPv6
- Debug and resolve software issues, including performance bottlenecks and challenging edge cases
- Write high-quality, well-documented C code that complies with best practices and coding standards
- Perform comprehensive testing, including unit, integration, and system-level testing, to ensure robust DNS server functionality
- Stay up-to-date with advancements in DNS technology and networking protocols
- Participate in code reviews and provide constructive feedback to team members
Requirements
- Bachelor’s degree in Computer Science, Information Technology, or a related field, or equivalent professional experience
- Minimum of 3 years of relevant experience
- Strong proficiency in C programming with expertise in systems-level programming
- Solid understanding of DNS concepts, protocols, and architecture
- Experience with networking protocols such as TCP/IP and UDP, as well as network programming
- Familiarity with Linux/Unix development environments
- Excellent debugging and problem-solving skills, including experience with tools like gdb and valgrind
- Ability to work independently and collaboratively in a fast-paced environment
- Fluent English skills (written and spoken) at a B2+ level or higher
Nice to have
- Familiarity with ISC Bind or similar DNS server software
- Knowledge of advanced DNS features such as DNSSEC, EDNS(0), or zone transfers
- Familiarity with IPv6 and its implications for DNS
- Experience with multi-threaded programming and concurrency
- Understanding of software security principles and best practices
- Experience with scripting languages such as Python or Bash for automation and testing
- Exposure to open-source development practices and tools like Git and Jenkins
We offer
- International projects with top brands
- Work with global teams of highly skilled, diverse peers
- Healthcare benefits
- Employee financial programs
- Paid time off and sick leave
- Upskilling, reskilling and certification courses
- Unlimited access to the LinkedIn Learning library and 22,000+ courses
- Global career opportunities
- Volunteer and community involvement opportunities
- EPAM Employee Groups
- Award-winning culture recognized by Glassdoor, Newsweek and LinkedIn
Key Skills
Ranked by relevanceReady to apply?
Join EPAM Systems and take your career to the next level!
Application takes less than 5 minutes