Position: Senior Unity Developer Rendering
Company: Intellias
Category: Unity
Experience required: 3y
English level: upper

The vision is to also start building some prototypes of existing C++ engine project using Unity Engine to evaluate what benefits we would have and understand if it's better to double down on OpenGL C++ or use Unity. 

Project Overview:
We are a fast-growing and highly motivated team, which is developing a real-time cartography solution that works on different platforms (from embedded devices like in-car devices, mobile device (Android, iOS, Symbian), to enterprise solutions). We are designing and implementing features in our proprietary next-generation 3D engine used for map rendering. The selected candidate will have the opportunity to implement new features into our 3D engine which vary from rendering-specific to algorithmic and system\platform-wide.

Technology Stack:

Working experience with Unity3D;
C#/C++ design and coding experience;
In-depth knowledge of OOP principles and design patterns;
Strong familiarity with client/server integration;
Knowledge in graphics and sound integration;
Experience in native development for iOS and Android is an asset;
Prior experience using Continuous Integration and build automation.
Responsibilities:
Develop new features for the map rendering engine;
Participate in a technical discussion to find a right architecture/design solution;
Write a highly optimized Unity3D, C# code;
Provide time estimates and time/performance/quality trade-offs to management.
Requirements:
5+ years of experience in software engineering;
Proficiency (3+years) in C#;
Strong understanding of SOLID principles;
Cross-platform development experience;
Excellent analytical, algorithmic, and optimization skills;
Knowledge of graphics APIs;
Expertise in C++ (preferably C++14), boost;
Knowledge of graphical algorithms, 3D rendering, or similar technologies e.g. game engine development;
At least upper-intermediate level of English, well-developed communication skills;
Understanding of Agile methodologies and engineering practices;
Able to work on non-graphics code;
Excellent knowledge of OOAD, architecture and design patterns, API design principles;
Passionate about programming, strong focus on performance aspects;
Self-motivated, well-organized, detail-oriented, and a very strong team player.
Nice to have:
Experience working with embedded systems and hardware;
Experience working with Docker, CI, Jenkins.