- Degree in computer science or a related field (Master’s or PhD preferred)
- Working knowledge of C# would be a plus
- Working knowledge of C++ would be a plus
- Strong knowledge of good software architecture practices including design patterns and object-oriented programming practices
- Experience working in a very large code base, including enhancing and resolving issues in pre-existing code
- Good spatial reasoning skills with a working knowledge of basic linear algebra such as transforms
- Strong understanding of algorithmic complexity and how it impacts system performance – experience using performance analysis tools is a plus.
- Demonstrated ability to work effectively in a cross-functional team – experience with agile processes is a plus
- Preferred Qualifications: Experience with BIM, CAD, or modeling software and / or working with the APIs for such products
- Experience with graphics or visualization algorithms
- Experience with building-related industries such as architecture or structural engineering
- Knowledge of user-interface development based on MFC and/or WPF
- Work collaboratively with a cross-functional agile team that is responsible for the entire software development process from analyzing market needs through the delivery of working software
- Develop new state of the art functionality that pushes the envelope for Building Information Modeling (BIM) around the world.
- Re-factor, optimize, and enhance existing code and algorithms.
Our Client is an American multinational software corporation that makes software for the architecture, engineering, construction, manufacturing, media, and entertainment industries.