We are seeking a talented and experienced Senior Software Engineer with expertise in C++ and computer graphics to join our innovative team.In this role, you will work on the design, development, and optimization of advanced 3D visualization and rendering technologies, pushing the boundaries of performance, scalability, and usability. If you thrive in a challenging and collaborative environment, we would love to hear from you!ResponsibilitiesPerform complex analysis, design, development, testing, and debugging of 3D visualization web applicationsDesign, develop, and test full 'vertical' visualization features - back-end computation and rendering, data management and storage, and front-end client-side streamingUse expertise and tools, including distributed computing, object-oriented programming, scalable parallel computing, visualization, C++, graphics, and WebGLUnderstand, maintain, and extend C++ code that transforms a Finite Element Mesh into a read-optimized polygon rendering meshUse 3rd party commercial APIs to compose a compressed H.264 video stream from the server-side render formatTroubleshoot, debug, and test C++ engine code, C# Web API service code, and client-side JavaScript web pages that comprise the vertical visualization stackDevelop a test strategy for validating the functionality of graphics rendering codeFix security vulnerabilities within the prescribed timelinesWork as part of a team maintaining and developing new enhancementsPerform periodic upgrades of the technology stackPerform technical design and reviews within the teamParticipate in various Scrum ceremonies and meetingsRequirements5-9 years of experience in software development4+ years of experience with C++ software development and architecture, including test methods, performance, scalability, usability, and securityDevelopment experience on the Linux operating system and familiarity with tools like CMakeDeep knowledge of computer graphics with experience using OpenGL, OpenInventor, nVidia NDX, Unity, or similar visualization frameworksBackground in distributed computing, scalable parallel computing, and object-oriented programmingProficiency in developing, debugging, and optimizing C++ software for 3D graphics enginesExpertise in large-scale hierarchical data formats such as HDF, with a focus on IO-bound performance and scaling concernsFamiliarity with Slurm and Singularity Container for distributed computingExperience with web sockets and streaming compressed video (H.264) between a rendering server and distributed web clientsUnderstanding of security testing tools, including CodeQL, SonarQube, Dependabot, Mend, and InvicitiFlexibility to work in both Linux and Windows environmentsAbility to independently solve complex problems while collaborating as a team player