Moffatt & Nichol specializes in large complex waterfront infrastructure projects and is recognized as one of the worldwide leaders in this field. We are actively looking for a 3D Graphics Engineer to join any of our US offices to support our FlexTerm group. FlexTerm is a real-time 3D industrial simulation platform where complex logistics systems are studied, designed, optimized, developed, and tested before being deployed into production. It allows to model any kind of system; however, it is mostly applied to highly automated facilities such as ports, container terminals, automated warehouses and factories, etc. These systems typically integrate infrastructure, equipment, people, automatic control systems, sensors, complex business logic, artificial intelligence, and machine learning to perform a common goal.As a Software Engineer, you will work closely with highly talented and experienced engineers to achieve the vision of FlexTerm in becoming the ultimate tool for planning, designing, and testing complex automated systems.About Moffatt & NicholMoffatt & Nichol is a leading U.S.-based global infrastructure advisor specializing in the planning and design of facilities that shape and serve our coastlines, harbors and rivers, as well as an innovator in the transportation complexities associated with the movement of freight. For the 2nd year in a row, Moffatt & Nichol is ranked Engineering News Record #1 for Marine & Port Facilities and Top 20 in Transportation. We were also named Southeast Design Firm of the Year 2023Moffatt & Nichol's professional staff includes engineers, planners, and scientists who serve our global client base from offices in Europe, North America, Latin America, and the Pacific Rim. The firm provides clients worldwide with customized service and a level of excellence that have become the firm's hallmark in several primary practice areas - ports and harbors; coastal, environmental and water resources; urban waterfronts and marinas; transportation, bridges and rail; inspection and rehabilitation; and energy.Duties and responsibilities:Reasonable accommodations may be made to enable individuals with disabilities to perform these essential functions.Craft highly effective C++ code to develop and maintain the applications in the FlexTerm platform.Write unit and integration tests for new and existing functionality.Contribute to the overall platform vision, architecture, and design.Excel with agile development methodologies.Write technical documentation and user manuals in the team's wiki site in Confluence.Other duties:Please note this job posting is not designed to cover or contain a comprehensive listing of activities, duties or responsibilities that are required of the employee for this job. Duties, responsibilities and activities may change at any time with or without notice.Qualifications:M.Sc. or B.Sc. in Computer Science or related discipline (Systems/Industrial Engineering, Electrical/Electronics/Computer Engineering, Mechatronics or Mechanical Engineering with emphasis in Robotics).Proven software development experienceMinimum 3 years of experience as a software engineer.Proven education or experience in:Computer programmingData structures and algorithmsCompilersOperating systemsDatabase systemsNetworks and distributed systemsNumerical methods3D computer graphics and animationLineal algebra and vector calculusPhysics (Mechanics)Statistics and probabilityOperations research (mathematical programming/optimization)Discrete-event system simulationDesired experience in:Real-time metrics/BI systemsAI/ML developmentFluent in a C-like programming language such as C, C++, C#, Objective-C, Swift, Lua, Java, Javascript.Desired skills:Low level 3D/VR libraries such as OpenGL, GLSL, Vulkan.