Skip to content
Md Shariful Islam

Property management · Drupal

Lapham Company — Long-Term Drupal Property Management Platform

Long-term technical ownership of a property management platform that I carried from Drupal 5 to Drupal 9 — listings with radius search, saved-search alerts, maintenance workflows, task and hour tracking, and admin reporting.

Lapham Company website shown on desktop, laptop, tablet and phone: a yellow-and-navy property site with a find-your-home search, featured rental listings, a properties-sold grid and a contact page with a map.

Overview

Lapham Company runs its property business on a custom Drupal platform: homes and apartments for rent and sale, a public search experience, and the internal workflows that keep properties maintained.

This project is defined by time. Rather than a single build, it is a long-running engagement in which I have been responsible for the platform as Drupal itself changed underneath it — from Drupal 5 through to Drupal 9.

The business need

A property company's website is not a brochure. It is where prospective tenants and buyers search, where enquiries begin, and — behind the login — where maintenance work is requested, assigned and tracked. The business needed:

  • A searchable, location-aware catalogue of properties for rent and for sale
  • A way for prospects to save searches and hear about new matches without returning every day
  • An operational system for maintenance requests that tracks who is doing what, and for how long
  • Reporting the administrative team could rely on
  • A platform that stayed secure and supported as Drupal versions reached end of life

My role

I own the platform's technical evolution and day-to-day engineering: custom module development, version upgrades and migrations, integrations, ongoing maintenance, and new features as the business's workflows change.

Technical architecture

The platform is built on Drupal with a set of custom modules that encode Lapham's business rules, on top of contributed modules where they are a good fit.

  • Listings: structured property content types for rentals and sales, with the attributes people actually filter on.
  • Location search: addresses are geocoded through a Geocoder integration, and Mapbox powers map display and radius ("within X miles") search.
  • Saved searches: users can store search criteria and receive email alerts when matching properties appear.
  • Operations: maintenance requests flow into task assignment, with hourly time tracking against tasks.
  • Reporting: administrative reports built on the same data the workflows produce.

Key implementation decisions

Treating major upgrades as migrations, not rewrites. Drupal 5 and the modern Drupal 9 architecture are fundamentally different platforms. Moving between them meant re-implementing custom modules against new APIs and migrating content and data while the business kept running on the system.

Keeping business logic in custom modules. Concentrating Lapham-specific behaviour in purpose-built modules, rather than scattering it across configuration and theme code, made each upgrade more tractable and kept the system understandable.

Integrating mapping services rather than building them. Geocoder and Mapbox provide address geocoding, maps and radius search, so engineering effort goes into the property-specific search experience rather than geospatial infrastructure.

Key features

  • Property listings for rent and for sale
  • Mapbox map views and radius search
  • Geocoder-based address geocoding
  • Saved searches with email alerts
  • Maintenance request workflows
  • Task assignment with hourly tracking
  • Administrative reporting
  • Custom module development and ongoing maintenance

Delivery status

The platform is in long-term production use and has been continuously maintained and upgraded through Drupal 9. The value here is sustained technical ownership: a business system kept current, secure and useful across successive generations of its underlying framework.

More work

NYP Kitchen Design partner portal presentation: German-language homepage for professional kitchen planning, partner dashboard with orders and status, planning service product pages and a mobile onboarding flow, with a WordPress, WooCommerce, Stripe and Cal.com technology strip.

B2B portal · WooCommerce

NYP Kitchen Design

A B2B partner portal for a German kitchen-planning service: partner registration and approval, protected project briefs and floor-plan uploads, WooCommerce ordering with Stripe, Cal.com bookings, invoices with German VAT, and GDPR tooling.

  • Partner registration with approval workflow
  • WooCommerce + Stripe ordering for planning services
  • Cal.com bookings synced by webhooks
RupBaz multi-vendor marketplace on laptop and phone: an orange-accented storefront with category navigation, a promotional banner, featured deals priced in Bangladeshi taka and a featured sellers row.

Multi-vendor e-commerce

RupBaz

A multi-vendor marketplace on WordPress, WooCommerce and Dokan Pro with vendor onboarding, customer ordering, payment integrations, cash-on-delivery controls, courier booking and tracking, and admin reporting.

  • Dokan Pro vendor onboarding and storefronts
  • Courier booking and shipment tracking
  • Cash-on-delivery controls and admin reporting

Let's talk

Have a complex product to build or improve?

Discuss a freelance or consulting project

A platform to build, a legacy system to modernise, an integration that has to work, or AI to add to an existing product.

Start a project inquiry

Connect about a senior engineering role

Remote senior full-stack positions where ownership, product judgement and breadth across the stack matter.

Talk about a role

Prefer email? kaitangroup@gmail.com