Get a quote

System Architecture · Ankara

System Architecture for Ankara businesses

Tie a reading to a device and you have tied it to a room. Paper travels to wherever the machine stands, a unit that cannot send its forms waits its turn, and the work gets planned around the hours the machine is free. The delay grows with every extra unit. That is where software architecture consulting in Ankara begins: does a job belong inside a device, or in a layer anyone can call? Vipkurum's optical mark reader cuts the tie: marks are read from the image of the form rather than through a device's optics, so the reading becomes a service anyone can call.

System Architecture — Ankara

One centre, several units beneath it, shared resources they reach one at a time: where an institution in Ankara is arranged that way, waiting for a turn is part of the work. An assessment that runs on paper waits twice in that shape — first for the form to travel, then for the machine to be free. The nearest work we have is Vipkurum's optical mark reading tool. Where it does not overlap, plainly: the tool was built for exams in education, and we have nothing to show on corporate approval chains, budget workflows or human resources, nor any public sector engagement. What travels is not the subject but the layer the reading happens in. Python and OpenCV run the image analysis, Node.js calls the service, and Laravel writes the result to MySQL.

  • Marks are lifted from the image of the form with OpenCV, so the reading lives in an image analysis layer that runs on its own and can be called, not inside a device's optics.
  • When a form layout changes the adaptation happens on the Python side, so nobody waits on a new machine or on forms ordered to suit one, and the change stays inside the software.
  • Both ends of an exam meet on one record: the question cropping tool produces the answer key, the reading tool lifts what the student marked, and the two land in the same exam record.

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

Vipkurum optical mark reading — marks read from the form image, reading as a service

Marks on an optical form are read from the image of the sheet, not through a reader's optics. The architectural half of it is where the reading sits: in a layer that can be called, not inside hardware. Forms are uploaded from a browser, Node.js calls the reading service that runs on Python and OpenCV, and Laravel writes the result into MySQL. A branch marks its own exam without sending paper to the room that holds the machine. When a layout changes, the adaptation is made in software, so no device swap or special form order enters the picture. The answer key from the cropping tool and the student's marks meet in one exam record.

Read the case study →

Working with Ankara 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

  • Which reader hardware would we need to buy?

    None. The reading is done by an image analysis layer rather than a device's optics. Because the image of the form is enough, the reading is not bound to one desk and each unit uploads its own sheets.

  • Our form layout shifts a little each term. What does that mean here?

    The adaptation is made on the Python side. A new layout calls for a change in the reading layer, not a purchase, so the chain of ordering device-specific forms never starts.

  • Vipkurum is an education platform and assessment is not our business.

    We say where the evidence stops: the tool was built for exams in education, and we have nothing to show on corporate approval chains or budget workflows. What carries across is the decision itself — whether a job belongs in hardware or in a layer that can be called.

  • How do you settle a decision like this between a centre and its units, remotely?

    We keep no office and the team works fully remotely. The decision arrives written down: which job sits in which layer, where the service is called from, which record takes the result. 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.