Enterprise

SwissProtects

A contractor-delivered construction-site access and attendance platform connecting workforce administration, device controllers, external workforce data and operational reporting.

Client work

Client work delivered as a contractor. I built the complete application; SwissProtects is not presented as my own or an AbaSoft product.

Overview

SwissProtects is a construction-site workforce, access-control and attendance system delivered as a contractor project. I built the complete application across web administration, APIs, background services and device integration.

The system connects projects, companies, workers and badges with site controllers and external workforce data. It combines ASP.NET Core, Angular, SQL Server, RabbitMQ and SignalR with dedicated Windows-service processes.

My contribution

Contractor — end-to-end software architecture and development

  • End-to-end architecture and application development as a contractor
  • ASP.NET Core API and Angular administration
  • SQL Server persistence and reporting
  • Windows service and device-controller integration
  • Asynchronous coordination and real-time updates

Problem & challenges

  • Keeping workforce assignments synchronized across software and physical controllers
  • Coordinating external workforce imports with local records
  • Turning device events into meaningful attendance intervals
  • Keeping administration responsive during background synchronization

Solution

  • Separated API and background-service responsibilities
  • RabbitMQ messaging for asynchronous workflow coordination
  • SQL Server persistence shared by the supported services
  • SignalR updates for project-level activity
  • Explicit handling of badge and worker identities at the device boundary

Key features

Project administration

Construction-site and contractor-company records

Workforce management

Workers and project assignments

Badge management

Explicit worker and badge identities

Controller integration

Synchronization and device transaction handling

Attendance

Records derived from device activity

Live updates

Project activity notifications through SignalR

Site logistics

Supported time-slot booking workflows

Case study

Context

Construction-site operations require coordination between workforce administration, site permissions and physical access events. SwissProtects combines these concerns in one application so that worker records and project assignments can be connected with controller synchronization and attendance reporting.

My role

I delivered the complete application as a contractor for SwissProtects, covering architecture and implementation across the backend, Angular administration interface, persistence and supporting Windows services. This is client work, with ownership attributed to the client.

System workflow

Administrators manage projects, contractor companies, workers, badges and device controllers. Background processes synchronize supported external workforce information and carry relevant worker assignments to controllers. Device transactions are recorded and processed into attendance information for operational use.

The application also includes reporting and project logistics workflows such as time-slot bookings. These workflows share the project and company context instead of maintaining separate identities for the same people and sites.

Technical approach

The system uses an ASP.NET Core API and an Angular frontend. SQL Server stores business records, while RabbitMQ coordinates asynchronous synchronization and processing. Dedicated Windows services handle external imports and native controller communication. SignalR provides live updates to the web interface.

Application and infrastructure responsibilities are separated so that the device integration boundary can be managed independently from interactive HTTP requests. Worker, badge and controller identities remain explicit rather than being treated as interchangeable identifiers.

Engineering challenges

Physical access systems must tolerate delayed events and synchronization work without blocking office users. Separating interactive administration from message-driven background processing allows each side to handle its own timing and failure conditions. Attendance processing preserves the distinction between raw device events and the business records derived from them.

Outcome

The delivered scope connects workforce administration, controller synchronization, attendance and reporting in one client system.

Technology stack

  • ASP.NET Core · Backend
  • C# · Backend
  • Entity Framework Core · Data access
  • SQL Server · Database
  • Angular · Frontend
  • TypeScript · Language
  • RabbitMQ · Messaging
  • SignalR · Real-time

Results

Delivery scope
Complete contractor application delivery Backend and administration plus integration services
Integration scope
Workforce and physical access coordination Device events linked with attendance and reporting

Updated