Java/Kotlin Internal Tools Developer

Planner 5D
Municipality of Valencia, Spain
yesterday

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English

Job location

Municipality of Valencia, Spain

Tech stack

Clean Code Principles
Java
Multitier Architecture
3d Models
API
Artificial Intelligence
Apache HTTP Server
Computer Vision
Automation of Tests
C++
Profiling
Code Review
Databases
Concurrent Computing
Console Applications
Continuous Integration
Data Conversion
Serialization
Software Debugging
Dependency Injection
Linux
Microprocessors
Gradle
Java Virtual Machine (JVM)
JSON
JUnit
Python
PostgreSQL
MongoDB
MySQL
Object-Oriented Software Development
OpenGL
Performance Tuning
Prometheus
Standard Sql
SQLite
WebGL
XML
Data Logging
Data Processing
Scripting (Bash/Python/Go/Ruby)
Delivery Pipeline
Code Structure
Core Api
Backend
GIT
Kotlin
Solid Principles
Kubernetes
Sentry
Asynchronous Programming
Apache Commons
Data Pipelines
Docker

Job description

We're looking for aJava/Kotlin Engineerwho will develop tools and pipelines related to AI, rendering, data conversion, and similar areas.Tech stackLanguages: Kotlin, PythonCore development: Kotlin/JVM, Java, coroutines, serialization, reflection, dependency injection with Dagger3D and rendering workflows: Blender Python scripting, glTF processing, 3D model conversion, geometry/math-related tooling, scene and asset preparation pipelinesData and storage: MongoDB, SQLite, FlatBuffersInfrastructure and observability: Prometheus metrics, Sentry, CI/CD, Git, Git LFS, internal monitoring and loggingResponsibilitiesDevelop 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.Required knowledgeStrong 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.Nice to haveExperience 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.Examples of tasks you will be doingProcess 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.#J-*****-Ljbffr

Requirements

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. Nice to have 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.

Apply for this position