JOB TITLE: Full Stack Developer — Laravel + Flutter
COMPANY: Dhanode
LOCATION: 515, Gera Imperium Rise, Opposite Wipro, Hinjewadi Phase 2, Pune (Work from office)
EXPERIENCE: 4 to 5 years
SALARY: 9 LPA+ (around Rs. 75,000+ per month). Final number depends on your
practical task, not on your last CTC.
JOB TYPE: Full time
WORKING DAYS: ______
NOTICE PERIOD: Immediate to 30 days preferred
ABOUT THE ROLE
Dhanode is a lead-to-revenue platform used by businesses across India — CRM,
lead pipeline, WhatsApp and email automation, ads automation and reporting.
You will work on both sides: the Laravel backend and the Flutter mobile app.
This is not a maintenance job. Whatever you build goes live in front of
paying customers, usually within the same month.
OUR STACK (exact)
- Backend: Laravel 13, PHP 8.5
- Database: MySQL 9.6
- Mobile: Flutter (Dart) — Android and iOS
- Other: Node.js 22, Redis queues, REST APIs, Git
- Server: Ubuntu + Nginx, behind Cloudflare
WHAT YOU WILL DO
1. Take a feature from a short brief to live — you decide the database
design, the API structure and the app flow, then build it.
2. Build and ship new Laravel modules — lead pipeline, automation flows,
reports, roles and permissions.
3. Write clean REST APIs for the app — token auth (Sanctum/Passport),
validation, versioning, proper error responses.
4. Build the same features on the Flutter side — screens, state management,
API integration, offline and slow-network handling.
5. Handle queues, cron jobs and background workers (Redis / Horizon) for
bulk sends and heavy reports.
6. Push notifications with FCM — token handling, deep links, delivery status.
7. Third-party integrations: WhatsApp Business API, Meta Graph API, payment
gateway (Razorpay / Cashfree), Google APIs.
8. Fix slow queries — indexing, eager loading, optimising tables that have
lakhs of rows.
9. Release builds on Play Store and App Store, handle store rejections and
version updates.
10. Review the junior developer's code before it goes live, and give your own
timelines and hold them.
MUST HAVE (we will test this)
- 4 to 5 years hands-on Laravel — Eloquent relations, queues, events,
middleware, service classes. Not only CRUD. You should be able to tell us
about one thing you made faster and how.
- A live Flutter app on Play Store that you built AND kept updating over
versions. One-time build with someone else maintaining it is not enough.
- Strong MySQL — joins, indexing, transactions, and the ability to say why a
query is slow before checking.
- REST API design and security — auth tokens, rate limiting, input validation,
handling failed and repeated requests.
- Flutter state management (Provider, Riverpod or Bloc) plus local storage
(Hive / SQLite / SharedPreferences) and API caching.
- Git — branches, pull requests, handling merge conflicts.
- Comfortable on a Linux server — read logs, deploy, restart services.
- Able to work without daily hand-holding, and ask the right question when
the brief is short.
GOOD TO HAVE
- Multi-tenant SaaS experience
- WhatsApp Cloud API or Meta Ads API
- Node.js
- Docker
- Real-time features (WebSockets / Pusher)
- Basic AWS or DigitalOcean
PLEASE DO NOT APPLY IF
- Your PHP work is mostly WordPress or plugin work.
- Your Flutter work was only UI screens with dummy data, no API layer.
- You cannot show live projects or code.
- You have 5 years on paper but the same 1 year repeated five times.
HIRING PROCESS
1. Short call — 15 minutes
2. Practical task — one API plus one Flutter screen (4 to 6 hours)
3. Technical discussion on your task and your past projects
4. Offer
WHY THIS ROLE IS WORTH IT
- You own full features end to end, backend to app, not small tickets.
- Direct work with the founder. Decisions happen the same day.
- Real users, real data, real load — not a demo project.
Pay: ₹700,000.00 - ₹900,000.00 per year
Work Location: In person