Java software engineer

Protolabs
15 days ago

Role details

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

Job location

Remote

Tech stack

Java
API
Automation of Tests
Databases
Continuous Integration
Relational Databases
Python
PostgreSQL
Software Engineering
Web Applications
Backend
Angular
Kubernetes
Docker
Microservices

Job description

We are looking for a Java software engineer to join the Product Operations team at Protolabs, where our mission is to revolutionise our workflow and drive efficiency as we continue our scaling journey. The team is responsible for streamlining processes - from allocating orders to our manufacturing partners, navigating production stages, managing communications and quality controls, orchestrating shipping & logistics, and ensuring timely payments.

In the past, we moved fast with bespoke tools that improved shipping & logistics but left a fragmented landscape. As we scale globally, we are unifying these capabilities and establishing Logistics as a first-class domain within our product and engineering ecosystem.

This is a true zero-to-one effort. You will ship early, small slices of value - balancing speed with durable foundations for scale and reliability.

Tech environment

For this role: Java microservices with Spring Boot; REST/async APIs; PostgreSQL; Redis; Docker/Kubernetes; CI/CD with GitHub Actions; observability and logging.

RabbitMQ &KNative for eventing

The broader ecosystem you will integrate with: Python services (FastAPI/Flask with SQLAlchemy and Celery), Angular (TypeScript) frontends, Terraform, Docker, k8s for infrastructure, Retool and Zapier for operational tooling. Some internal teams also use Rust and C++.

What'll you do

  • Ship business value fast: design, implement and release thin slices that reduce manual work, improve on-time shipments, increase logistical visibility, and shorten cycle times
  • Build and integrate Java-based microservices and APIs: expose secure, well-documented endpoints and integrate with eventing systems
  • Make pragmatic architectural calls: design data contracts and integration approaches that balance speed with long-term maintainability
  • Establish foundations: set up CI/CD, automated tests, observability and SLOs to ensure reliability from day one
  • Streamline operations: automate exception handling and reconciliations, retire legacy scripts/tools, and remove bottlenecks across the order-to-ship flow
  • Collaborate and influence: work closely with Product Ops, stakeholders, and contribute and participate in our Backend Guild
  • Own end-to-end delivery: discovery, design, build, deploy, monitor, iterate-and handle production issues to keep value flowing

Requirements

  • 5+ years of experience building web applications and backend services, with at least 3 years of experience in using Sprint Boot in a (micro)services environment
  • Proficiency in Java for designing, developing, testing, and monitoring production systems
  • Experience with relational databases (like PostgreSQL)
  • Familiarity with Docker, Kubernetes, and CI/CD environments
  • Experience working in an agile team, and excellent communication and collaboration skills

Bonus point for:

  • Deep understanding of event-based architectures
  • Familiarity with Angular
  • Comfort reading and understanding Python code

Nice to have

  • Knows and understands basic concepts and procedures in one of the development disciplines
  • Strong verbal and written communication skills
  • Excellent work ethic, positive attitude and sense of urgency

Apply for this position