About the Role
We’re looking for a Senior Staff Software Engineer to join the Player Platform team at Epic. Player Platform is a central organization within Epic, supporting all of Epic’s games and products and providing solutions for identity, accounts, friends, social, voice, commerce, and more across hundreds of millions of players and multiple platforms. As a Staff Engineer, you will be solving problems at the intersection of services, distributed systems, and performance, building solutions that will scale and provide a reliable, low latency experience for millions of players. You’ll serve as a technical leader on the team, owning large and impactful projects from design to implementation, mentoring other engineers, and improving development practices. If you have a passion for building highly scalable services and enjoy collaborating with teams across different disciplines, then we’d love to talk to you!
In this role, you will
- Architect, design, develop, and maintain highly performant, reliable, and scalable backend services using C++ and Go.
- Collaborate with other engineers and product teams to define technical requirements and designs for new features and systems.
- Provide technical leadership and mentorship to other engineers on the team, fostering a culture of technical excellence and continuous improvement.
- Optimize existing systems for performance, scalability, and cost-efficiency.
- Troubleshoot and resolve complex technical issues, ensuring high availability and reliability of services.
- Drive improvements in development processes, tools, and best practices, including CI/CD, testing, and observability.
- Stay up-to-date with the latest industry trends and technologies, evaluating and recommending new solutions as appropriate.
What we're looking for
- 10+ years of experience in software development, with a focus on backend systems and distributed services.
- Expertise in C++ and Go/Golang, with a strong understanding of their ecosystems, concurrency models, and performance characteristics.
- Extensive experience designing, building, and operating large-scale, highly available distributed systems and microservices.
- Deep understanding of networking protocols, performance optimization techniques, and fault-tolerant system design.
- Proficiency with containerization (Docker, Kubernetes) and orchestration technologies.
- Experience with cloud platforms (e.g., GCP, AWS) and infrastructure as code (e.g., Terraform).
- Strong knowledge of relational and NoSQL databases, caching strategies, and message queues.
- Experience with observability tools and practices (monitoring, logging, tracing).
- Demonstrated ability to lead complex technical projects from inception to delivery.
- Excellent communication, collaboration, and problem-solving skills.
- Bachelor’s degree in Computer Science or a related field, or equivalent practical experience.
Nice to have skills
- Experience working on gaming platforms or other high-traffic consumer-facing services.
- Familiarity with various operating systems (Linux, Windows, macOS).