Timesheet App – From Learning Tool to a Centralized Time Tracking Powerhouse

What began as a hands-on learning experience has now grown into a reliable, daily-use internal product: the Timesheet App. Built entirely in-house, the app is now our centralized system for tracking time, managing project involvement, and generating reports that support HR, Project Managers, and Admin teams.
Why We Built the Timesheet App?
In every organization, time is one of the most valuable resources. We needed a way to clearly track and report how it’s spent—per person, per project. Off-the-shelf tools didn’t give us the flexibility or insight we were after, so we created a custom solution that could.
The goal was to build something that:
- Allows employees to easily clock hours on assigned projects
- Gives PMs visibility into team assignments and project timelines
- Enables HR to pull clean, exportable reports on time spent
- Ensures secure, role-based access to all data
A Closer Look at the App
At the heart of the Timesheet App is the Clocking tab, where employees record the time they’ve spent on their assigned projects. It’s intentionally minimalistic—quick to use and built to encourage consistency without getting in the way of the work itself.
The Projects tab gives everyone visibility into the current state of projects: when they start and end, who’s involved, and who’s managing them. This helps keep teams aligned and avoids confusion about responsibilities or timelines.
In the Users tab, admins can manage user roles and access levels. It provides a clear breakdown of who is working on what and helps ensure that people only see the data relevant to their role.
Finally, the Reporting page is where things come together. From here, users can generate detailed CSV reports filtered by date range, project, or user. These reports are used regularly by HR for audits and time analysis, and by project leads for better planning.
Engineering Behind the Scenes
We dedicated time to developing a robust backend to ensure optimal app performance and security. We also built a strong technical foundation to support the app's functionality and long-term performance.
- Authentication and Authorization: Integrated Keycloak for secure, centralized user management, including SSO, identity brokering, and fine-grained access control.
- Data Synchronization: Keycloak user data is automatically synced to the Timesheet App database to maintain consistency and simplify role assignment.
- State Management: Used NgRx Store to manage application state. As the app evolved, this centralized approach helped simplify data flow and improve responsiveness.
- Logging and Monitoring: A custom logging module gives us better insight into traffic and backend activity, helping us monitor usage patterns and quickly identify issues.
- Admin Dashboard: Built for administrators to oversee data, troubleshoot, and manage system-level settings.
Quality Assurance: Built-In from the Start
QA wasn’t an afterthought—it was embedded into the development process from the very beginning. Delivering a reliable experience was non-negotiable, especially for an internal tool that's used daily.
Quality Assurance was integrated early into the development lifecycle, with a strong emphasis on test coverage and real-world use case validation, based on the following main focus-points:
- Comprehensive Test Case Design: Based on user stories, we created detailed QA test cases covering all primary and edge-case interactions.
- Post-MVP Bug Strategy: A structured bug identification and resolution plan was created after the MVP release, helping prioritize fixes and enhancements based on user impact.
- Automated Testing Suite: We implemented full automated testing across critical workflows. These tests ran consistently to validate new updates, catch regressions, and maintain app stability.
- Continuous Improvement: Feedback loops between QA, developers, and stakeholders ensured quick iterations, faster delivery, and consistent quality.
The end result? A smooth, high-performance tool that passed all automated checks and met our internal reliability standards before going into full production.
Real-World Results: The Impact
Since launching, the Timesheet App has become an essential part of our internal workflow. It’s used daily across departments and has become a reliable source of truth for time tracking and reporting. HR uses it for audits and payroll prep. Project managers use it to monitor progress and allocate resources. Employees use it to track their time with ease.
What began as a small internal experiment has grown into a production-ready tool that solves real problems. And thanks to its solid technical foundation, we’re well-positioned to keep improving it over time.