Backend development
Contributed to backend functionality for handling monitored devices and their stored state.
03 · Chalmers · Networking · Software development
A six-person Chalmers project exploring a network-driven approach to detecting when shared computers stop reporting.
Shared computers can be spread across several locations, making it difficult to notice quickly when one is disconnected or stolen.
Our group explored whether network discovery and heartbeat signals could provide an early indication that a computer had disappeared. A missing heartbeat could flag a device for investigation, but could not determine why it had stopped reporting.
The prototype combined network discovery with a lightweight client that sent heartbeat signals to a central backend. The backend used them to track which known devices were reporting and flag those that stopped.
Monitored endpoint
Go · scheduled execution
Spring Boot · device state
Flagged for investigation
I worked on the backend and heartbeat mechanism, helped coordinate the early stages of the project and contributed to writing and editing the report. The system itself was designed and built by the six-person team.
Contributed to backend functionality for handling monitored devices and their stored state.
Worked on the mechanism used to determine whether monitored computers were still reporting to the system.
Helped coordinate the early stages of the project and took part in technical discussions and decisions.
Contributed to writing and editing the group report, including editorial work across the document.
Client for sending heartbeat signals from monitored computers.
Application logic and central handling of device information.
Persistence and database access during development.
Discovering devices on the network.
Running the heartbeat client automatically on monitored systems.
The project gave me practical experience with networking and backend development, but also with taking a problem through research and design to a working prototype.
Working as a team meant bringing together code, ideas and decisions from different parts of the project, then testing the result and documenting it in a shared report.
Researched, designed and built collaboratively by the project team.
View project repository