Maya K.
Senior Full-Stack Developer
SuperGig Editorial Last updated July 2026 9 min read
A Java developer job description works when it names one job, not three. Building a Spring Boot backend, modernizing a legacy enterprise system, and building an Android app are different hires with different must-have skills, and the generic template that lists all of them at once is why good candidates skip your posting. Say which of the three you are hiring for, name the stack you already run, describe the first project, and publish a rate range. That posting gets fewer replies and far better ones.
Find your freelancer
PreviewYour top matches
2 of 3 can start this week All 3 available this month Flexible start dates
Senior Full-Stack Developer
Senior Backend Engineer
Mobile Developer
Product Designer
UX Designer
Brand Designer
Conversion Copywriter
Technical Writer
Content Strategist
Growth Marketer
SEO Specialist
Performance Marketer
Video Editor
Post-Production Editor
YouTube Editor
Small-Business Bookkeeper
Senior Bookkeeper
Freelance Accountant (CPA)
Executive Virtual Assistant
Operations Assistant
Social Media Assistant
Technical SEO Consultant
SEO Content Strategist
Link and Digital PR Lead
Google Ads Consultant
Paid Search Manager
PPC Specialist
Senior Data Scientist
ML Engineer
Analytics Data Scientist
Senior DevOps Engineer
Platform / SRE Engineer
Cloud Infrastructure Engineer
Social Media Manager
Content and Community Manager
Paid Social Strategist
Management Consultant
Operations Consultant
Financial / FP&A Consultant
Freelance CPA
Tax Accountant
Fractional Controller
Direct-Response Copywriter
Conversion Copywriter
Ad and Brand Copywriter
Senior QA Automation Engineer
SDET / Test Engineer
Manual and Exploratory QA Lead
Certified Salesforce Developer
Salesforce Technical Architect
Salesforce Admin and Consultant
Senior UX Designer
UI and Interaction Designer
UX Researcher
Senior Webflow Developer
Webflow Designer and Builder
Webflow Migration Specialist
Certified Legal Translator
Localization Specialist
Medical and Technical Translator
Senior Commercial Illustrator
Editorial and Spot Illustrator
Children's Book Illustrator
Example profiles for preview. Your real shortlist is hand-picked for your brief once your early-access spot opens.
Fund milestone 1 · $1,800 in escrow · $4,800 in escrow · $12,500 in escrow · released on your approval
The role
A Java developer builds the server side your product runs on: the APIs, business logic, data access and background jobs that everything else depends on. The job also covers the parts nobody demos, meaning transactions, concurrency, error handling and behavior under load, plus the batch and streaming pipelines that move data between systems, where you also want to know the moment a feed goes stale or a row count looks wrong.
That description is accurate and almost useless for writing a posting, because it fits a contractor who wires up CRUD endpoints and a senior engineer who owns a payment platform that cannot lose a transaction. The gap between them is not Java syntax. It is judgment about how data is modeled, where transaction boundaries sit, and what happens when two requests hit the same record at once. Your job description is the first place that judgment can be filtered for, so it should describe the system, not the language.
Pick one
This is the single change that improves a Java posting the most. Most templates you will find bundle backend services, legacy modernization and mobile into one wish list, which reads as a company that has not decided what it is building. Work out which column below you are in first, then write only that column's requirements.
| If you are building | The real requirement | Proof to ask for |
|---|---|---|
| A new backend service or API | Modern Java, Spring Boot, relational data modeling, REST or GraphQL, transactions, testing. This is the most common Java hire. | A repo or service with a real data model, tests and error handling, not just happy-path endpoints |
| Modernizing a legacy enterprise system | Experience moving Java 8 or old Jakarta EE to a current LTS release and Spring Boot 3, getting an untested monolith under test, incremental migration. | A specific migration they led and how they kept features shipping while they did it |
| An Android app | Kotlin and modern Android architecture, background work, offline storage, push notifications, and Play Store release experience. Spring is irrelevant here. | A published app you can install, plus their account of one rejected submission |
A strong Spring Boot backend developer is not automatically an Android developer, and a modernization specialist who is brilliant at untangling old code may not be who you want greenfielding a new service at speed. If you genuinely need more than one, hire the primary role now and add the next when the work is real. For the mobile side specifically, see freelance mobile app developers.
Template
Fill every bracket. A bracket you cannot fill is a scoping decision you have not made yet, and candidates will find it in the first call anyway.
About the work. We are [company, one line on what you sell and to whom]. We need a Java developer to [build the API and data layer for our new product / carve services out of our monolith / take over a Java backend a previous team left]. The stack is Java [version] with Spring Boot [version], [Postgres, MySQL, Oracle], [JPA or jOOQ], [Kafka or RabbitMQ if used], deployed on [AWS, GCP, Azure, on-prem]. The consumer of this API is [our React front end / mobile apps / partner integrations].
First project. In your first [two to six] weeks you will [ship the v1 of the X service, roughly [n] endpoints, against an agreed API contract and data model]. Success looks like [services deployed to staging, reviewed and merged, with tests, validation, and error handling for the failure paths].
You will. Design and build services in Java and Spring Boot. Own the data model and the transaction boundaries for the features you ship. Handle validation, error responses and concurrency correctly, not as a follow-up ticket. Add logging, metrics and traces so the service is debuggable in production. Write tests that fail for the right reasons. Review pull requests and explain trade-offs in writing.
You have. [n]+ years building production Java backends, strong Spring Boot, solid relational data modeling and SQL, a real understanding of transactions and concurrency, and Git. [Add only the one specialism from the table above that this job actually needs.]
Nice to have. Kafka or another message broker, Docker and Kubernetes, a cloud provider, JVM profiling and tuning, GraphQL, and experience in [your industry, especially if it is regulated].
Terms. [$X to $Y per hour, roughly [n] hours per week / $X to $Y salary]. [Time zone overlap you need.] Paid in milestones you approve. To apply, send [a repo or service you built] and two lines on one backend decision you would make differently today.
That last line does more filtering than the rest of the posting combined. It cannot be answered by a template reply, and the answer tells you whether someone has run a system long enough to regret a data-model or architecture choice. For scoping the work itself, our freelance job brief template covers deliverables, milestones and acceptance criteria.
Skills
Require modern Java, Spring Boot, relational data modeling with SQL and JPA, a real grasp of transactions and concurrency, REST API design, Git, and testing with JUnit. Treat Kafka or another message broker, Docker and Kubernetes, a cloud provider, GraphQL and reactive frameworks as preferred, because requiring every one of them at once shrinks your candidate pool for no gain.
| Skill | Where it belongs | Why |
|---|---|---|
| Spring Boot | Required | It is the default for commercial Java web services. Someone without it will be relearning your whole stack on your time. |
| Data modeling and SQL | Required | The schema outlives the code. A bad data model is the most expensive mistake in a Java backend, and it is a judgment skill, not a framework. |
| Transactions and concurrency | Required | Java is chosen precisely for systems where two requests at once must not corrupt data. Getting this wrong is why teams pick Java in the first place. |
| Testing (JUnit, integration tests) | Required | Not for coverage numbers. For whether a contractor can hand the service back without your team being afraid to deploy it. |
| Kafka / messaging | Job-specific | Required for event-driven and high-throughput systems. Irrelevant for a straightforward CRUD API, where demanding it just narrows the field. |
| Kubernetes | Preferred | Useful, but if you run on a managed platform or a small cluster, requiring deep k8s filters out strong developers for infrastructure they will barely touch. |
| A specific ORM brand | Preferred | Name the concept, not the exact tool, unless your codebase already runs on it. Hibernate and jOOQ people cross over in days. |
| Java EE app servers (old style) | Drop it | Unless you are specifically hiring for legacy work, requiring WebLogic or old JBoss experience signals a stack candidates do not want to join. |
| "Full stack" as an afterthought | Drop it | Tacking front end duties onto a backend posting gets you two half-skills. Hire the interface role properly instead. |
If the front end is real rather than incidental, post it as its own role and hire React developers for it. Two specialists on defined milestones almost always beat one generalist stretched across both ends.
Seniority
Five or more years of professional backend work with at least three in Java and Spring is the usual bar, but the years matter less than what they contain. A genuine senior has run a Java service in production, debugged something that only failed under load, and made a data-model or architecture decision they can now explain the trade-offs of. Someone with six years of building similar CRUD services from a spec is a competent mid-level, not a senior.
| Level | What the posting should ask for | US contract rate |
|---|---|---|
| Junior (0 to 2 years) | Builds endpoints and CRUD from a clear spec, closes supervised tickets, asks before inventing patterns | $30 to $55/hr |
| Mid-level (2 to 5 years) | Owns a service end to end including the data model, transactions, tests and review | $65 to $110/hr |
| Senior (5+ years) | Sets backend architecture, draws service boundaries, owns performance and concurrency, mentors | $110 to $160/hr |
| Specialist (throughput, JVM, data) | Scale and latency rescue, streaming pipelines, garbage-collection tuning, large migrations | $150 to $220+/hr |
Published 2026 data puts the median US freelance Java rate near $95 per hour, with seniors in the $110 to $160 range. For comparison, US employers report Java backend salaries roughly in the $100,000 to $160,000 range depending on market and seniority, so a contractor at $120 per hour part time on a defined scope is often the cheaper way to get a backend built. Full cross-role numbers are in our freelance developer rates guide, and the role page has the detail: hire freelance Java developers.
Red flags
These appear in nearly every copied template, and each one costs you good applicants without improving the ones you get.
Screening
You do not need a whiteboard. These four take about twenty minutes and separate people who have shipped and operated Java from people who have finished a course.
A good answer reaches for optimistic locking with a version column, or a database constraint, and explains the trade-off with pessimistic locking under contention. A weak answer assumes it will be fine, or wraps everything in a giant synchronized block. This one question predicts more production incidents than any framework trivia.
Look for a diagnostic order rather than a fix list: check the actual SQL and the query plan first, look for N+1 queries and missing indexes, check connection pool and cache behavior, then profile the JVM only if the database is not the problem. Someone who leads with "add more instances" is guessing.
Strong candidates ask questions before drawing tables, separate entities from attributes, and think out loud about the queries the model has to serve and where it will need to change. This is the skill that determines whether month four is calm or a rewrite, and it shows up in minutes when you ask.
The point is not the code. It is whether they can describe a trade-off they made under time pressure and what they would do differently. People who have owned production systems answer this easily. People who have only built greenfield demos usually cannot think of one.
If the posting goes out publicly, the bottleneck moves from writing it to reading the replies. A Java posting on a large job board can pull several hundred applications in a week, most of them template matches, and it is worth using something that can read every inbound resume against your criteria before you spend evenings doing it manually. The general vetting checklist is in how to vet a freelancer.
Contract or employee
An employee job description sells a career: growth, team, ownership over time. A contract brief sells a defined piece of work, so three things change. Replace responsibilities with deliverables, because "own the backend" means nothing when the engagement is eight weeks. Replace the salary band with an hourly rate and an estimated weekly commitment. Add the practical terms: who owns the repository (yours, from day one), how milestones are approved and paid, what handoff includes, and what happens if scope changes.
Keep the classification clean while you are at it. A contractor sets their own hours, uses their own equipment and is paid per milestone or invoice, not on your payroll cycle. Our guide to 1099 vs W2 covers where US teams get that wrong, and what to include in a freelance contract covers IP assignment, which matters more than most first-time hirers expect when the deliverable is a service your business depends on.
FAQ
Backend developer is the broad role: server-side work in whatever language the project uses. Java developer is that role narrowed to the JVM and the Spring ecosystem, so you get depth in Java concurrency, data modeling, Spring Boot and JVM performance. Hire a Java developer when your backend is already Java and you want someone productive in week one. Hire a general backend developer when the stack is undecided.
For almost any web service, yes. Nearly every commercial Java backend in 2026 is a Spring Boot application, so requiring it filters out very few people you actually want and gets you someone productive immediately. The exception is Android, where the framework is the Android SDK rather than Spring. Ask what the candidate has shipped with Spring Boot in production, not just whether the word appears on their resume.
Add scope that a mid-level posting does not have: setting backend architecture, drawing service boundaries, owning the data model and performance across the system, making concurrency decisions, reviewing other people's work, and being accountable for how the system behaves under load. If none of that is in the job, you are describing a mid-level role at a senior price.
Aim for 400 to 600 words. Long enough to name the stack, the first project, the requirements and the rate, short enough that a busy senior reads all of it. Anything past that is usually boilerplate about company culture that candidates skip, or a stack list that should have been cut to five to seven items.
For a backend it barely matters, because Kotlin runs on the same JVM and Spring ecosystem, and a strong Java developer picks it up in weeks. Hire on JVM and Spring depth and let the exact language follow your codebase. For an Android app, Kotlin is the default Google recommends, so hire for Kotlin and Android experience there rather than pure Java.
A job description is worth writing when you plan to read applications. If you would rather see three people who already passed a screen, send the same brief to us instead. Every Java developer in the pool has been through a four-stage vetting process that fewer than 1 in 20 applicants clear, you get a hand-picked shortlist within 48 hours, and payment sits in escrow until you approve the work. Pricing is a flat 10% project fee, shown on the pricing page.
Tell us what you need built, review a hand-picked top-1% shortlist within 48 hours, and pay only for work you approve.