Planner5D - Java/Kotlin Internal Tools Developer
Requirements
• Languages: Kotlin, Python • Core development: Kotlin/JVM, Java, coroutines, serialization, reflection, dependency injection with Dagger • 3D and rendering workflows: Blender Python scripting, glTF processing, 3D model conversion, geometry/math-related tooling, scene and asset preparation pipelines • Data and storage: MongoDB, SQLite, FlatBuffers • Infrastructure and observability: Prometheus metrics, Sentry, CI/CD, Git, Git LFS, internal monitoring and logging • Strong experience with Java and/or Kotlin on JVM; • Practical experience with Python, willingness to work deeply with Python-based Blender rendering pipelines; • Good understanding of JVM ecosystem: Gradle, dependency management, modular code structure, debugging, profiling, logging, and performance optimization; • Solid SQL knowledge (SQLite, MySQL, PostgreSQL); • Good understanding of object-oriented programming, SOLID principles, clean architecture, and maintainable code design; • Ability to work with math-heavy, data-heavy, or algorithmic tasks and turn them into stable production solutions; • Ability to write clean, reliable, high-performance code and cover critical logic with tests; • Knowledge of Linux, common tools, and Linux ecosystem; • Fluent in English. • Experience with Python, C / C++ languages; • Experience with popular libraries like Spring, Dagger, JUnit, Apache Commons; • Understanding of 2D / 3D technologies and software (for example OpenGL, WebGL, Raytracing, Blender); • Understanding of Mathematics, Geometry, Computer Vision; • Understanding of Kubernetes, Docker and nearby technologies. • Several example of tasks you will be doing: • Process data from APIs, databases, JSON, XML, and other sources; • Transform assets (images, 3D models, videos, etc.) into different formats; • Import and export of 2D/3D data from and to .dxf/.dwg/.blend formats; • Write a Blender plugin to load data and provide additional modeling functionality; • Write high performance code using CPU and GPU to the max (using parallel, concurrent programming like coroutines, threads, Rx, promises, futures, etc.); • Build processing pipelines, where multiple threads are used to max out CPUs and do lots of different processing on multiple threads/coroutines/Rx/java streams/etc.
Responsibilities
• Develop and maintain Kotlin/JVM-based backend tools, console applications, utilities, and automation pipelines; • Develop and support Python-based Blender rendering pipelines, including scene processing, automation and production rendering workflows; • Work on platform components for preparing catalogs, launching processing pipelines, converting 3D models, and supporting internal production workflows; • Build and maintain tooling related to 3D content processing, geometry, scene preparation, wall generation, model conversion, and other math-heavy tasks; • Research and evaluate current and upcoming technologies related to 3D, rendering, media formats, data processing, and production automation; • Write maintainable, high-performance, and high-quality code using best practices, SOLID principles, automated tests, code reviews, and clean architecture.
Benefits
• Great work environment that balances freedom and responsibility • Our team is made up of friendly and passionate enthusiasts who are eager to help and share their knowledge • We believe in work-life balance, so you'll receive around 30+ days of paid holidays per year • Company computer equipment by request • Education courses for our team members, and we're willing to allocate funds toward your training expenses • English classes on our corporate platform • Offline company events in Lithuania and online team-building • Unlimited free Planner5D subscriptions
Apply in one click
Upload My Resume
Drop here or click to browse · Tap to choose · PDF, DOCX, DOC, RTF, TXT