
Overview
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 highly skilled and experienced Lead Software Engineer specializing in C++ and Graphics to join our team.
This role will focus on developing and optimizing 3D visualization solutions and include responsibilities spanning back-end computation, rendering, and front-end client-side integration. You will collaborate with a cross-functional team to deliver high-performance, scalable, and secure software systems tailored to complex visualization needs.
The role demands technical excellence, creativity, and a passion for solving complex visualization challenges, offering an opportunity to lead impactful projects in 3D software development.
Responsibilities
- Perform complex analysis, design, development, testing, and debugging of 3D visualization web applications
- Design, develop, and test full 'vertical' visualization features - back-end computation and rendering, data management and storage, and front-end client-side streaming
- Use expertise and tools, including distributed computing, object-oriented programming, scalable parallel computing, visualization, C++, graphics, and WebGL
- Understand, maintain, and extend C++ code that transforms a Finite Element Mesh into a read-optimized polygon rendering mesh
- Use 3rd-party commercial APIs to compose a compressed H.264 video stream from the server-side render format
- Troubleshoot, debug, and test C++ engine code, C# Web API service code, and client-side JavaScript web pages that comprise the vertical visualization stack
- Develop a test strategy for validating the functionality of graphics rendering code
- Fix security vulnerabilities within the prescribed timelines
- Work as part of a team to maintain and develop new enhancements
- Perform periodic upgrades of the technology stack
- Perform technical design and reviews within the team
- Participate in various Scrum ceremonies and meetings
Requirements
- 8-15 years of experience in software development
- 5+ years of experience in C++ architecture and development, encompassing test methods, performance, scalability, usability, and security
- At least 1 year of relevant leadership experience
- Development experience on Linux, with familiarity with CMake and key tools/libraries enabling development, testing, and debugging
- Deep knowledge of computer graphics, with experience in OpenGL, OpenInventor, nVidia NDX, Unity, or similar visualization frameworks
- Strong background in developing, debugging, and optimizing C++ software for a 3D graphics engine
- Competency in handling large-scale, hierarchical data formats such as HDF, with a focus on IO-bound performance and scaling
- Skills in utilizing distributed computing, object-oriented programming, scalable parallel computing, C++, and graphics tools/frameworks
- Familiarity with web technologies, including web sockets and streaming compressed video (H.264) between rendering servers and distributed web clients
- Understanding of security testing tools such as CodeQL, SonarQube, Dependabot, Mend, or Inviciti
- Proficiency in working in both Linux and Windows environments
- Experience with Slurm and Singularity Container for distributed computing tasks
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.)