Introduction
This curriculum is tailored to the requirements of a Senior Laravel Developer role. It assumes you know the basics of web development and focuses on the specific stack: Tailwind, Alpine.js, Laravel, Livewire (TALL), plus Filament for admin panels.
🚀 Laravel Crash Course
The MVC basics in 30 seconds:
// routes/web.php
Route::get('/users', [UserController::class, 'index']);
// app/Http/Controllers/UserController.php
public function index() {
return view('users.index', ['users' => User::all()]);
}
// resources/views/users/index.blade.php
@foreach ($users as $user)
<div>{{ $user->name }}</div>
@endforeach
⚠️ Job Profile Requirements
- Experience: 5+ Years. We will simulate "Senior" tasks, not just "Hello World".
- Stack: PHP 8.2+, Laravel 12, Livewire 3, Alpine.js, TailwindCSS.
- Infrastructure: MySQL (Optimization), Redis (Queues/Cache), Nginx, Linux.
- Soft Skills: Code Reviews, Documentation, Agile/Lean Workflow.
🎯 Expected Outcome
By the end of this guide, you will be able to:
- Architect scalable applications using Laravel 12 and PHP 8.2 features.
- Build dynamic, SPA-like interfaces with Livewire 3 without writing complex React/Vue code.
- Create robust admin dashboards in minutes using Filament.
- Optimize database performance using MySQL indexes and Redis caching.
- Manage background jobs and queues for high-performance processing.
- Implement CI/CD pipelines with GitLab CI.
- Write clean, testable code following SOLID principles.
HR-001
Role Definition
The "Senior" Difference
Junior vs Senior
A Junior asks: "How do I make this work?"
A Senior asks: "How do I make this maintainable, scalable, and secure?"
Key Responsibilities
- Legacy Support: You will likely encounter older code. You must know how to refactor safely.
- Performance: N+1 queries are unacceptable. You must know how to use Eager Loading.
- Architecture: Service Classes, Repositories, and DTOs (Data Transfer Objects) over fat controllers.
How to use this guide
- Environment: We will use Laravel Sail (Docker) to match the requirement for Linux/Nginx knowledge.
- Strict Typing: We will enforce PHP strict types
declare(strict_types=1);. - Documentation: You will be asked to write PHPDoc and README sections.