Product Engineer

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Full Time

WAGE / SALARY

$15/hour

HOURS PER WEEK

40

DATE UPDATED

Jun 17, 2026

JOB OVERVIEW

You might call yourself a full-stack developer or backend engineer today. We think that role is changing fast and we're looking for someone who's already feeling it.

We're a small Dutch tech company building ComChamp - the central nervous system for organisations. Today it's a CRM and Customer Journey Orchestration platform. Our clients are energy and telecom companies in the Netherlands who use it to run everything from lead intake to proposals to service delivery, without stitching five tools together.

Where it's going: an Agentic Communication Hub, where AI agents handle routine interactions, hand off to humans for complex ones, and operate within the same journeys and audit trails. Same workflow, executed by a person or an AI. That's what we're building toward.

Our team is 8 people. Our codebase is 25+ TypeScript microservices. And we're growing.


**What this role actually is**
We don't need someone to write code line by line. AI does that now and we use it extensively. What we need is someone who can think clearly about what to build, direct AI to build it, and know when it's getting it wrong.

That means:
- You understand how systems connect - databases, APIs, queues, state management - not at the syntax level, but at the "why is this architected this way" level
- You can look at an AI-generated solution and smell when something is off
- You can break a messy business problem into clean, executable steps
- You can explain a complex idea simply - to a teammate, to a client, to an AI

This is a product role as much as an engineering role. You'll think about what users need, how workflows should behave, and where the system should be smarter. Then you'll make it happen with AI as your primary tool.

**What you bring**
Must-haves:
- Strong understanding of backend systems (we use NestJS, Prisma, PostgreSQL, but we care more about depth than specific frameworks)
- Experience working with AI coding tools Cursor, Claude, Copilot, or similar
- Clear written and spoken English - this is non-negotiable, it's how we work
- The ability to think at the product level, not just the ticket level

Great to have:
- Experience with workflow engines, state machines, or process automation
- Familiarity with Docker, Kubernetes, RabbitMQ, Redis, or GCP
- Interest in AI agents and autonomous systems - not as hype, but as real engineering problems

**What we offer**
- Salary in line with your capabilities paid reliably, every time
- Long-term contract, as we're not looking for a quick project, we're building a team
- Real ownership and influence on what we build and how
- We bet heavily on AI-driven development and constantly experiment with the newest capabilities, always tied to real deliverables.
- Small team, big ambitions where your work directly shapes the product
- Work with people who think differently about what software teams will look like

**How to apply**
Don't just send a CV. Write us a short message (a few paragraphs is fine) that answers two things:
- What's something complex that you understand really well? Could be technical, could be anything. Explain it to us like we know nothing about it.
- Why does this role interest you? Not a generic answer, but what specifically about how we described this made you want to respond?

We read every application. The way you write your response tells us more than your resume.

--------------------------------------------------------------------------------------------------

We're building infrastructure for a world where communication IS operation, where small organizations can operate at enterprise scale, and where autonomous agents work alongside humans. If solving these problems excites you, we'd love to hear from you.

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0201
Total Execution Time  0.0213
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,512,776 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Product-Engineer-1670565
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0146 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1670565
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 782050
 LIMIT 1 
0.0092   SELECT COUNT(DISTINCT t.id) as cnt
FROM 
`t_thread` `t`
INNER JOIN `t_message` `mON `t`.`id` = `m`.`thread_id`
INNER JOIN `t_message_employer` `eON `m`.`id` = `e`.`message_id`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1670565
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-06-22',ej.date_added) duration_daysDATEDIFF('2026-06-22',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-06-22',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1670565' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1670565 
0.0006   UPDATE employer_jobs SET hit_counts '***Jun-17-2026=530***Jun-18-2026=116***Jun-19-2026=26***Jun-20-2026=30***Jun-22-2026=1' WHERE job_id'1670565'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Jun-2026=703' WHERE job_id'1670565'  
0.0004   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1670565' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1670565 
0.0012   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '782050'
AND `date_added` >= '2022-06-08' 
0.0004   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)