About us:
Started as an app to create floor plans and interior designs, Planner 5D is now a unified destination for home improvement and design for over 80+ million users across the globe.
Do you remember the last time you were doing a renovation at home? Dealing with different designers and architects, figuring out where to place your furniture and how many outlets do you need. Our mission is to make the entire design process as streamlined and pleasant as possible. Planner 5D makes it possible for every person out there to design their own dream home — and this is only the beginning of our path.
Planner 5D is available on all platforms, including Web, iOS, Android, Windows and MacOS with full synchronization between them. The company is well funded by international VCs.
Planner 5D is more than an app or a platform for home design. Planner 5D is a team. A team of perspective talents, sharing the same passion and values an opportunity to work together. A team of young enthusiasts, working from different countries and time zones to achieve a common goal. A team of highly-motivated professionals, seeking to make visual home design tools accessible to anyone.
We strive to develop and enter new market verticals. That’s why we are constantly searching for new talents and ready to expand our team.
We're looking for Java engineer, who will be developing our infrastructure internal tools.
Requirements:
- 5+ years of job experience in Java development
- Knowledge how to write clean and maintainable code (best practices, TDD, design patterns)
- General understanding and knowledge of the Java ecosystem (frameworks, libraries, services)
- Experience with Kotlin
- SQL (SQLite, MySQL, PostgreSQL)
- Multithreaded development - threads, coroutines, Rx, Java streams
- Supporting technologies - REST, JSON, XML, HTML, Git.
- Fluent in English
Responsibilities:
- Develop new features and maintain console applications and utilities
- Research into current and upcoming technologies like AI, big-data, 3D, media formats, ...
- Write maintainable, high performance and quality code - this means using best practices like SOLID, STUPID, writing tests, doing code reviews, ...
- Communicate in our team to clarify complex technical questions
- Working with processes and tools needed for development - like SCRUM, Jira, Git, IDEs, ...
- Writing Java, Python and Kotlin code
- Learn and improve your knowledge (with help of other team members as needed)
- Several example of tasks you will be doing:
- Process data from APIs, databases, JSON, XML, ...
- Transform assets (like images, 3D models, videos, ...) to different formats
- Import and export of 2D/3D data from and to .dxf/.dwg/.blend/... formats
- Writing Blender plugin to load data, provide some extra modelling functionality in Blender
- Write high performance code using CPU and GPU to the max (using parallel, concurrent programming like coroutines, threads, rx, promises, futures, ...)
- Write processing pipelines, where multiple threads are used to max out CPUs and do lots of different processing on multiple threads/coruotines/rx/java streams/... .
Nice to have:
- Experience with Python, C / C++ languages
- Understanding of 2D / 3D technologies and software (for example OpenGL, WebGL, Raytracing, Blender)
- Understanding of Mathematics, Geometry, Computer Vision
What we offer:
- Attractive compensation. Our goal is to ensure that our team members are financially comfortable, and we are open to any salary negotiations;
- Balance of freedom and responsibility in the position. We believe in empowering our team members and allowing them to take ownership of their work. We won't micromanage, and instead trust our team to operate independently;
- Investment in education and training. We support the professional development of our team members and are willing to allocate funds toward their training expenses.
- Company-provided computer equipment;
- Paid Time Off. Around 40 days of yearly vacation time;
- Additional perks such as discounts on car rentals, coworking spaces, work management tools, and immigration support;
- The flexibility to work from anywhere in the world through remote means.
We hope that your application will be the beginning of a long-term and mutually beneficial relationship that goes beyond a job. Fill in the form and we’ll get back to you within a working day!