AI-Augmented Laravel + Vue 2 Developer / Engineer (EU property-tech, remote)

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

TYPE OF WORK

Full Time

WAGE / SALARY

$5/hr

HOURS PER WEEK

40

DATE UPDATED

Jun 10, 2026

JOB OVERVIEW

Title:
AI-Augmented Laravel + Vue 2 Developer / Engineer (EU property-tech, remote)

Role
We are looking for a strong, reliable engineer who likes to move fast with AI tools and still ships carefully. We care heavily about clear communication, good decisions, and a clean trial result.

About us
We are a European property-tech company. We maintain a long-running Laravel application with Blade, Vue 2, Bootstrap, and tenant-scoped data patterns. We use GitLab merge requests. We care about security, privacy, and small reviewable changes.

How we work
We use an AI-assisted development workflow. You are expected to use coding assistants to speed up analysis and implementation, but you treat generated output as draft work: clarify scope, plan the change, verify behaviour, keep diffs small, and prove changes with sensible and thorough checks and testing before review.

This role is a great fit if you like turning requirements into a short plan, using AI where it helps, keeping changes easy to review, and checking your work before you ask for feedback. It is not a fit if you want to ship large unreviewed blocks of AI-generated code.

What you will do
- Deliver scoped changes on a mature Laravel + Vue 2 codebase using AI-assisted methods safely.
- Open merge requests with clear descriptions, scoped commits, and tests where applicable.
- Communicate in writing about plan, trade-offs, and verification steps.

Requirements
- Demonstrable AI-assisted workflow in real product work (you can explain it concretely).
- Comfortable working in Laravel in a larger codebase, including reading and navigating existing code you did not write yourself.
- Comfortable with Vue 2 in production, or strong Vue experience with a clear plan to work within Vue 2 patterns in this codebase.
- Comfortable with Blade templates and web security (escaping, CSRF, safe handling of user input).
- Solid Git habits: branches, scoped commits, merge request workflow.
- Written English strong enough for async work with EU stakeholders.
- Ideally 4 to 6 hours overlap per workday with CET business hours (Monday to Friday). Please state your timezone and the CET window you can reliably cover each workday.

Nice to have
- AI-assisted work on legacy codebases (careful refactors, incremental upgrades, tenant-scoped features).
- Laravel Mix / Webpack and Docker-based local builds.
- Multi-tenant SaaS experience.

Trial (before any production access)
We run a mini-trial on a sandbox repository that mirrors our stack patterns but contains no production code or customer data. Timebox is about 4 to 6 hours, agreed upfront.

You may use AI tools during the trial, but you must not paste secrets, customer data, production logs, or private business information into external tools. You must be able to explain and defend everything you submit.

How to apply (English, no template letters)
1) Your current AI-assisted workflow: how you scope prompts, verify output, and prevent scope creep.
2) One example where an AI tool gave a wrong or risky suggestion. How did you catch it?
3) Either (A) walk us through one concrete merge request or commit you authored where AI was your primary tool: what you prompted, what came back, and what you changed before merge, or (B) if you cannot share a link, describe your first 30 minutes on an unfamiliar legacy Laravel/Vue task before you edit code.
4) How do you keep AI-assisted changes small and reviewable in a legacy monolith?
5) Multi-tenant safety: what checks would you do before changing a query that returns tenant-owned records?
6) What information must never be pasted into external AI tools? Name categories, not examples from real projects.

Do not apply if
- You are not the person who will do the work.
- You ship AI output without verification.
- You cannot describe your workflow concretely.
- You only have Vue 3 experience and cannot commit to Vue 2 patterns in this codebase.
- You would paste secrets, production logs, or customer data into external tools.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.1205
Total Execution Time  0.1217
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,514,792 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/AI-Augmented-Laravel-Vue-2-Developer-Engineer-EU-property-tech-remote-1636719
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.1146 seconds)  (Hide)
0.0006   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0005   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1636719
 LIMIT 1 
0.0028   SELECT *
FROM `employers`
WHERE `employer_id` = 930321
 LIMIT 1 
0.1039   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` = 1636719
AND `misc`.`idIS NULL 
0.0006   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-06-19',ej.date_added) duration_daysDATEDIFF('2026-06-19',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-19',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1636719' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1636719 
0.0008   UPDATE employer_jobs SET hit_counts '***May-01-2026=9***May-02-2026=1***May-03-2026=474***May-04-2026=77***May-05-2026=32***May-06-2026=164***May-07-2026=71***May-08-2026=33***May-09-2026=35***May-10-2026=31***May-11-2026=81***May-12-2026=27***May-13-2026=19***May-14-2026=27***May-15-2026=12***May-16-2026=8***May-17-2026=15***May-18-2026=19***May-19-2026=34***May-20-2026=30***May-21-2026=21***May-22-2026=23***May-23-2026=10***May-24-2026=24***May-25-2026=17***May-26-2026=48***May-27-2026=20***May-28-2026=17***May-29-2026=11***May-30-2026=6***May-31-2026=4***Jun-01-2026=10***Jun-02-2026=9***Jun-03-2026=11***Jun-04-2026=8***Jun-05-2026=15***Jun-06-2026=1***Jun-07-2026=4***Jun-08-2026=4***Jun-09-2026=5***Jun-10-2026=210***Jun-11-2026=103***Jun-12-2026=47***Jun-13-2026=54***Jun-19-2026=1' WHERE job_id'1636719'  
0.0006   UPDATE employer_jobs SET monthly_hits '***May-2026=1399***Jun-2026=482' WHERE job_id'1636719'  
0.0016   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1636719' 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` = 1636719 
0.0017   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '930321'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)