SICPA Turkey · 2023 – present
RTU-MYS / MzTurnCounter
Museum visitor counting & device monitoring
Visitor-counting and remote-device-monitoring platform for Turkey's Ministry of Culture & Tourism, ingesting turnstile telemetry from a fleet of Raspberry Pi RTUs (Remote Terminal Units).
MzTurnCounter
Visitors today
12,480
Active RTUs
47 / 48
Open alarms
0
Passages per hour
09:0014:0020:00
Device fleet
● 45 online● 2 buffering● 1 offline
- Role
- Fullstack Developer
- Period
- 2023 – present
- Context
- SICPA Turkey
- Status
- In production
Highlights
- 01
Built the server (ASP.NET Core 8 MVC, EF Core, PostgreSQL on AWS RDS) with a token-authenticated heartbeat/transaction API receiving passage & alarm telemetry from field devices.
- 02
Set up and configured IIS on Windows Server and deployed the .NET application via Web Deploy, with Data Protection key persistence for stable multi-deploy auth.
- 03
Designed an offline-resilient edge pipeline: a multiprocess Python agent on each Raspberry Pi buffers passages in local SQLite and replays them on reconnect for zero data loss; energy-signal-based monitoring eliminated false alarms at low-traffic sites.
- 04
Implemented an OTA fleet-update system with SHA-256 integrity checks, staged/canary rollout by region, scheduling and one-click rollback, plus a device approval/blacklist security flow.
- 05
Delivered automated Excel (ClosedXML/MiniExcel) and PDF (QuestPDF) reporting via a scheduled background service, and an SSE-based MYS reconciliation tool comparing system counts against Ministry records.
Architecture
- 01
Raspberry Pi RTU
Multiprocess Python agent counting turnstile passages
- 02
SQLite buffer
Keeps passages locally while offline, replays them on reconnect
- 03
Heartbeat API · .NET 8
Token-authenticated heartbeat / transaction endpoints
- 04
PostgreSQL · AWS RDS
Passages, alarms and device state
- 05
Reports · MYS
Scheduled Excel/PDF reports and Ministry reconciliation (SSE)
Other projects
All projects →Company Assistant
local model · Ollama
How many days of annual leave do I get?
It depends on seniority: 14 days for 1–5 years, 20 days for 5–15 years, 26 days for 15+ years.
Supervisor
QdrantBM25rerank
SICPA Turkey · 2023 – present
Corporate AI Chatbot
Multi-agent RAG & LLM fine-tuning pipeline
A fully local, department-isolated corporate assistant built on a multi-agent Retrieval-Augmented Generation architecture with self-hosted LLMs.
- Python
- FastAPI
- Ollama
- LangChain
- LangGraph
EXP-2026-1042
Expense report
Total
₺3,025.00
Meals
Approved
₺635.00
Taxi
Approved
₺240.00
Hotel
Pending
₺2,150.00
Submit for approval
SAP mapping
Meals →770.01.003
RabbitMQ
expense.submitted ✓ ack
SICPA Turkey · 2023 – present
Exprova
Corporate expense management platform
Mobile + web platform for capturing, submitting and approving employee expense reports and cash advances, with SAP accounting-code integration.
- Laravel 10
- PHP 8.1
- MySQL 8
- Laravel Sanctum
- RabbitMQ