web systems architect · ankara

Architecture should be drawable.

If you cannot draw a system on one page, you do not understand it yet. I design institutional web platforms and retrieval systems, turning requirements into a bounded technical scope and that scope into something that runs and can be handed over.

scope
Institutional
field
Full stack → Backend · RAG
span
20+ years
location
Ankara, TR

About

sheet 02

A web systems architect who designs web-based systems from survey to deployment, and builds everything between where a request arrives and where infrastructure takes over.

I spent 20+ years in IT and have been developing professionally since 2019. That order is not an accident. Coming to software after systems, networking and infrastructure makes it easier to see where today's decision lands three years from now. I started as a full stack web developer; today the weight is on backend architecture and RAG systems.

At Atılım University I work as Web Development Specialist within the Directorate of Corporate Communications and Promotion. The scope is not only code: I manage the content of the institutional site, set up and run the faculty and administrative unit sites, enter academic staff information, and support the research assistants and academics responsible for their department's web pages.

What decides the outcome is often not the code but keeping the boundaries of responsibility clear: translating the content side's needs into a workable technical scope, agreeing the interface with the infrastructure side, and leaving the work documented and transferable.

Client layerNuxt · Vue · Blade · multilingual UIApplication layerLaravel · Filament · REST · queuesRelational dataPostgreSQL · MySQLVector datapgvector · embeddingsInfrastructure and securityWith IT · servers · network · accessEND-TO-END DESIGN
direct responsibilityrun in coordinationScale 1:1 · unit of measure: responsibility

Interfaces

sheet 03

On an institutional web platform, knowing where the work starts and stops decides more than the code does. I have two boundaries: the content side a request arrives from, and the point where infrastructure takes over.

Upper boundary

Directorate of Corporate Communications and Promotion

crosses the boundary

Publishing needs, content calendar, corporate identity rules, campaign and promotion requests.

Lower boundary

IT and Infrastructure

crosses the boundary

Server and certificate management, access rights, backups, security requirements.

Requests usually arrive as needs with a short turnaround: a campaign page, an application flow, a small service. Because the interface, application, data and deployment sit in one pair of hands, going from a requirement to a running version normally takes a single round of coordination.

How the work runs

  1. 01

    Turning a request into scope

    Work does not start until a request becomes a feasible technical scope with a clear boundary.

  2. 02

    Keeping revisions traceable

    Change requests are recorded; which decision was taken when, and why, can be read back later.

  3. 03

    Leaving it transferable

    Setup, dependencies and operating steps are documented, so the work does not depend on one person.

  4. 04

    Planning maintenance

    Version upgrades and maintenance windows are agreed so they do not collide with the publishing calendar.

Skills

sheet 04
backend
  • php
  • laravel
  • postgresql
  • mysql
  • rest api
  • filament
retrieval
  • pgvector
  • embeddings
  • rag pipeline
  • llm api
frontend
  • vue.js
  • nuxt
  • blade
  • tailwind
  • javascript
devops
  • linux
  • nginx
  • ssh
  • cloudflare
tools
  • git
  • wordpress

Retrieval

sheet 05

This drawing is a section through one installation: a source-citing assistant built over a bilingual institutional corpus of roughly seven thousand pages. The order of stages is similar in most RAG systems; what happens inside each stage is decided again for every data source, sector, language set and error tolerance. The details below are the decisions made for this installation, not a recipe.

The two lanes run separately: the offline one indexes the content, the online one drops the query into that same index. Most of the cost sits in the first lane; all of the latency sits in the second.

detail 01

Source

what
Content pages and structural modules from the CMS are gathered into a single corpus.
in this installation
Read directly from the database, selected by publication status and language; table, accordion and tab modules are flattened to plain text.
decision
Unpublished pages are excluded; archive pages were producing answers as if they were current, which the evaluation showed.
where it changes
If the source is a PDF archive, a ticketing system or a product catalogue, the collection layer is built entirely differently.

Alongside the system runs an evaluation pipeline: a fixed question set, trap questions and four-category labelling. Most of the decisions above came out of it.

Case studies

sheet 06
campus portal

Connect Atılım

Atılım University

01 / 02
problem

Campus tools (QR, short URLs, micro-services) were scattered with no single entry point.

approach

A modular Laravel portal; each tool an independent service under a shared identity and UI layer.

outcome

Campus infrastructure managed from one address and open to new tools.

institutional web

Atılım University Web

Ongoing management

02 / 02
screenshot
problem

A multilingual, high-traffic institutional site with constant content and visual production needs.

approach

Custom development on WordPress; an SVG/HTML banner pipeline and content workflows.

outcome

A consistent, fast-updating institutional presence the content team can move on without waiting for technical support.

Breakdown

sheet 07

Every job is surveyed before it is priced. This is a summary of that survey: what came in, what was examined, which decisions were made. Methods are not explained; decisions and their reasons are. Jobs that stayed at proposal stage or were declined are here too, because saying no is also a decision.

came in
A template e-commerce site from 2021, and four months of no progress with the previous developer.
examined
Existing site score (38/100), hosting and payment infrastructure, backup state, the real size of the product range, delivery rules (district, day, time slot), legal compliance gaps.
decisions
For 6 products, not full e-commerce but product-led micro-commerce with a strong admin panel. Subscriptions and bundle building moved to a second phase; scope narrowed, price held. First task: revoking the previous developer's access.
techniques
Laravel, Vue, custom admin panel, delivery slots, payment provider integration.

came in
"Our site and products don't show up in search; our dealers do." A trade fair three months out.
examined
Existing site (43/100), the data gap between a 736-product catalogue and the site (dimensions and colours in the PDF, absent from the site), a named competitor table, the dealer network's position in search results, the timeline against the fair.
decisions
Corporate site, technical catalogue and quote basket; dealer portal in a second phase. The document for senior management: a situation assessment with no budget and no methods.
techniques
Structured product data, technical SEO, catalogue migration, quote flow.

came in
A direct-sales site for the producer.
examined
Product variant structure, the need for a reusable core.
decisions
A reusable e-commerce core rather than one-off code; a custom panel rather than an off-the-shelf admin.
techniques
Laravel 12, Inertia, Vue 3, a PRD-driven automation loop.

came in
Moving a 242-screen CRM with four accounting integrations to a modern stack; 30 days, fixed price, no partial delivery.
examined
Screen count, integration surface, data migration risk, the ratio of time to scope.
decisions
No proposal. This scope in 30 days is not realistic; promising that timeline to a buyer who rejects partial delivery would not have been honest.
techniques
Not described.

came in
A printed form moved to the web for applications opened by a change in law, on a tight deadline.
examined
Form fields and their conditional logic, a reference list of about 25,000 records, the review unit's workflow, hosting options.
decisions
Form fields manageable from the panel; a multi-user review panel; Laravel rather than plain PHP.
techniques
Laravel, staged form, list matching, role-based review.

came in
A directorate's web, graphic, notice and news requests made written and trackable; event tracking.
examined
Existing request channels, the approval hierarchy, the variety of forms, a second unit's CRM-like need.
decisions
A separate application rather than an embedded module; forms and flows designable by an administrator; sign-in through institutional SSO.
techniques
JSON form schema, versioning, workflow builder, SAML2, Vue dashboard.

came in
Visitors unable to find answers across close to seven thousand pages.
examined
Content distribution and quality, how structural modules convert to text, the bilingual corpus, the risk of fabricated answers.
decisions
Source-citing answers; the evaluation pipeline as part of the product; a vector index on the existing database.

Brand withheld. 3D model: SamFStudent, CC BY 4.0.
came in
A marketing site for an authentication API that verifies a selfie with liveness detection in about 87 ms, stores no raw images and keeps only encrypted embeddings. The audience is developers and technical decision makers.
examined
Which parts of the promise are measurable (latency, liveness, encryption, KVKK/GDPR), the conversion model (free API sign-up, upgrade to Starter/Pro, sales contact for Enterprise), how the competitors (AWS Rekognition, Azure Face, FaceIO) present themselves.
decisions
The headline is a measurement, not a sentence: latency as a number on the first screen. A code sample on the first screen and a single monospace face for the developer audience. One accent colour on a dark ground; the privacy promise (no raw images stored) on the first screen. A six-page marketing site delivered as a clickable prototype.
techniques
Design system (Inter Tight + IBM Plex Mono, single accent), clickable prototype, a CC BY 4.0 licensed 3D wireframe model.

Writing

sheet 08

Contact

sheet 09

Write if you have an institutional platform, a migration, or something on the retrieval side.