Get a quote

System Architecture · Bakirkoy

System Architecture for Bakirkoy businesses

The costliest minute in service work is the one where the office says something on the phone while the technician, standing at the customer's door, is looking at something else. Along the retail line on the western side of Bakirkoy the addresses sit close together: if a technician gets through several doors in a morning, calls about those same jobs keep reaching the counter. Two screens stay open in the same minute. AlgoKlima was built so both hang off one Laravel install.

System Architecture — Bakirkoy

On that retail line a shop and its service side can live inside one business; where they do, the person answering reads a screen while the customer stands there. The district's private health facilities are a different fabric and our evidence does not sit there: we have nothing to show at hospital or clinic-chain scale. The nearest work we have is AlgoKlima, our own product whose upkeep we carry. Where it does not overlap, also written down: it was built for air conditioning, boiler and appliance service, not for a shop till or retail stock. What carries across is how two surfaces attach to one install: a Laravel and Inertia office panel, a React Native (Expo) field app, both reading the same MySQL record with Redis holding the cache.

  • The office panel and the field app attach to the same Laravel install, and because no surface opens a data model of its own, both sides read the same MySQL record.
  • Changes can reach one record from the field and from the office, and since no second copy is kept, no reconciliation step appears later.
  • Warranty, maintenance and fault history sit under the device rather than the address, so files for several units at one address stay apart and a unit keeps its history when it changes hands.

Why Algoriel

  • The parts read one source

    At Tahlil.com the site, the admin panel and the mobile app read the same information instead of behaving as three systems.

  • Where each job is solved comes first

    Which layer handles which job is decided before code, because work that has to move later is expensive to move.

  • The summary recomputes itself

    As the Günlük Hava Durumu archive grows, the climate summary recomputes from it; nobody maintains a monthly table by hand.

  • One rule for file layout

    On the KGM SsangYong site, where a file is written and under what name now follows one rule the upload code obeys.

  • Where the data divides

    When several institutions share one system, each enters through its own domain and student, guardian and payment records stay inside that institution's boundary. This arrangement is what the term multi-tenant describes.

  • What a record attaches to

    Whether service history is written against a person, an address or a device is settled before the schema exists. Reversing that later means re-attaching everything already recorded.

  • Permission held in the data model

    A teacher, a guardian and an institution administrator reach the same timetable record at their own level of access. Permission is part of how the record is defined, not a view switched off on a screen.

  • Splitting the read path

    Which screens are served from a held copy and which go to the database is settled before the first record exists. On Vipkurum a frequently opened screen comes from the copy, and only a read with no copy reaches the database.

  • Interfaces on a single system

    Tahlil.com hangs three interfaces off one system: the patient site, the physician panel and the mobile app read the same record, and no second data model is written per interface.

  • Storage laid out on day one

    The naming and folder scheme files will live under is fixed at the start; a layout imposed afterwards turns into a migration.

Work like this

System Architecture · Case study

AlgoKlima — office panel and field app on a single Laravel install

Our own product for air conditioning, boiler and appliance service teams, with upkeep we carry ourselves. One sentence sits at the centre of the architecture: two surfaces, one install. The office panel runs on Laravel and Inertia, the field app on React Native (Expo), and both attach to the same MySQL record while Redis carries the read load. The field side does not treat a connection as a precondition: a technician opens and closes a record out of coverage, and the queue on the phone drains in creation order once the connection returns. Warranty, maintenance and fault history sit under the device record, not on a person's card.

Read the case study →

Working with Bakirkoy teams, remotely

We have no office, so work for this city runs remotely and we do not offer on-site support. What was done, and why it was done that way, stays in writing. The project pages mark which builds came out of a partnership.

  • The first release ships as a working piece; extras follow later.
  • Every client we know of is in Turkey.
  • Decisions stay in writing; progress shows in working screens.

Frequently asked

  • Could we not run the office and the field on separate programs?

    You could, and the price is visible: two sets of records and a reconciliation step afterwards. In AlgoKlima the panel and the field app attach to the same Laravel install, so while a customer waits, both sides are reading the same row.

  • Does the app stop when the technician is out of coverage?

    It does not. The record is written to the phone's local queue first and the app keeps working without waiting for a connection. When the connection returns, the queue drains in the order records were created.

  • There are several units at one address. Do the records get mixed up?

    History hangs off the device, not the address. Warranty, maintenance and fault records sit under the unit, and when a unit changes hands its history travels with it.

  • Have you worked with health facilities in the district?

    No, and we do not imply otherwise. We have nothing to show at hospital or clinic-chain scale. We keep no office in Bakirkoy either; the team works fully remotely, and messages sent through the quote form get an answer within 2 working days.

Let us settle where your data divides before any code is written.