Skip to content
Muhammed Dilaver

Independent software developer, Edmonton, Canada

Drawn upproperly.Built to last.

I'm Muhammed Dilaver, a self-employed software developer in Edmonton. I design and build web applications, mobile apps and backend systems for businesses, from the first conversation through launch and the years after.

InfrastructureVercel, AWS, DockerDataPostgreSQLAPI and logicJava, Node.jsInterfaceNext.js, React, Flutter
Developer
Muhammed Dilaver
Practice
Self-employed, sole proprietorship
Based in
Edmonton, Alberta, Canada
Experience
15 years
Status
Accepting new projects

Step 1 of 5

We start with a conversation

Before any code, I learn how your business actually runs: who will use the software, what slows them down today, and what a good result looks like.

You get A written scope, timeline and quote.

Step 2 of 5

It gets drawn up first

I map out the screens, the data and the systems it connects to, and we agree on them together. Changes are cheap on paper, so this is where we make them.

You get Wireframes and a technical plan you sign off on.

Step 3 of 5

Built in small, visible steps

I work in short cycles and keep a live preview running, so you can click through progress every week instead of waiting for a big reveal.

You get Weekly updates and a working preview link.

Step 4 of 5

Checked before it reaches you

Automated tests guard the parts that matter, and every screen gets checked on real phones and browsers. Accessibility and security are part of the job, not add-ons.

You get Test coverage and an accessibility review.

Step 5 of 5

Launched, handed over, supported

I deploy it to production and hand over the source code, accounts and documentation. It's yours. I stay on for fixes, updates and whatever comes next.

You get Your code, your accounts, and ongoing support.

notes-from-our-first-call.txt🔒 bookings.yourbusiness.caWhat we heardBookings come in by phone,some get lost in the notebookCustomers want to bookat 11pm, from their phoneStaff need today's scheduleat a glanceSend a confirmation emailand a reminder the day beforethe real problemfluid: 320px phones to 1440px desktopsstaff sidebarNorthside ClinicToday, TueTodayCalendarCustomersSettingsToday's bookingsNew bookingAAmira K.Consultation9:00TTom B.Follow-up10:30PPriya S.First visit12:00JJonah W.Consultation14:15LLucía M.Follow-up16:00booking.tsexport async function bookSlot(input) { const slot = await db.slot.find(input.slotId) if (slot.taken) throw new SlotTakenError() const booking = await db.booking.create(input) await email.sendConfirmation(booking) await reminders.schedule(booking, '1 day before') return booking}books an open slotrejects a slot that's already takenemails the customer a confirmationlayout holds at 320px widepasses automated accessibility checks5 passed, 0 failedLive

What I build

I take on software work for small and mid-sized businesses, startups and agencies that need an extra senior developer.

  • Web applications

    Customer portals, booking systems, dashboards and internal tools that replace spreadsheets and paper. Built with TypeScript, React and Next.js.

  • Mobile apps

    iOS and Android apps from a single codebase with Flutter or React Native, taken all the way through App Store and Google Play review.

  • Backends and integrations

    Databases, APIs and the glue between the tools you already pay for: payments, accounting, CRMs, email and calendars.

  • Business websites

    Fast, accessible websites that rank well, load quickly on a phone and are easy for your team to update.

  • Automation

    Scripts and workflows that take repetitive admin off your plate: reports, data entry, syncing records between systems.

  • Maintenance and rescue

    Updates, fixes, monitoring and improvements to software you already run, including projects someone else started and left behind.

Working together

This is my business and my full-time work. Every engagement is paid, quoted in writing and backed by a contract. Rates depend on the scope, so I quote each project individually after our first conversation.

Fixed-scope project

A defined piece of work for an agreed price, quoted in writing before anything starts.

Good for: New builds with clear requirements.

Hourly

Billed for time actually spent, with an itemized timesheet attached to every invoice.

Good for: Work where the scope will change as we learn.

Monthly retainer

A reserved block of hours each month for development, maintenance and support.

Good for: Ongoing products that need a developer on call.

The paperwork

Handled properly, every time.

  • A written agreement and statement of work before work begins
  • Invoices issued per milestone or monthly, payable by Interac e-Transfer or bank transfer
  • GST charged where applicable
  • Source code and intellectual property assigned to you once paid in full
  • Confidentiality or NDA signed on request

Hi, I'm Muhammed.

I've been building software professionally for 15 years, for clients in several countries. Since 2023 I've run my practice from Edmonton as a sole proprietorship, and I take on a small number of client projects at a time, so each one gets my full attention.

There are no account managers or handoffs. The person you talk to on the first call is the person who writes the code, answers the support email and knows why every decision was made.

I care about software that is boring in the best way: it loads fast, it doesn't break on Friday evening, and the next developer can read it.

Tools I work with

Languages
TypeScript, JavaScript, Java, Dart
Web
Next.js, React, Tailwind CSS
Mobile
Flutter, React Native
Backend
Java, Node.js, PostgreSQL, REST and GraphQL APIs
Infrastructure
Vercel, AWS, Docker, GitHub Actions
Integrations
Stripe, QuickBooks, Google Workspace, Microsoft 365

Questions

Are you a company or an individual?

I'm self-employed and operate as a sole proprietorship. You contract with me directly, and I invoice you under my own name.

How do you charge?

Fixed price for well-defined projects, hourly for evolving work, or a monthly retainer for ongoing support. Larger projects usually start with a deposit, with the balance tied to milestones. You always get a written quote before any work starts.

Who owns the code?

You do. Once the work is paid in full, the source code, designs and all related intellectual property are assigned to you. Accounts and hosting are set up in your name from day one.

Can you take over an existing project?

Yes. I start with a short, paid code review so we both know what we're working with, then give you an honest plan: fix it, improve it gradually, or rebuild the parts that need it.

Do you work with clients outside your province?

Yes. I work remotely with clients across Canada and abroad, with calls scheduled during Mountain Time (MT) business hours.

How quickly can you start?

It depends on my current commitments; I'll give you a realistic start date with your quote. I reply to every enquiry within one business day.

Tell me what you're building.

A few sentences about the problem is plenty. I'll reply within one business day to set up a free, no-obligation call.

Office hours
Monday to Friday, Mountain Time (MT)

This opens a draft in your own email app; nothing is sent or stored by this website. See the privacy policy.