Appa

Access management, working hours accounting, leave management, and tracking made simple and painfree.

/01. WHYYY

Workforce and Leave Management s*cks

Years ago, we used a spreadsheet accessible to all employees to keep track of holiday requests. As we grew, this system couldn’t keep up with us and our needs. It became hard to track who would be on vacation and when, daily working hours recording was impossible, and vacation approvals turned into a nightmare.

So, we started looking for a new solution. None of the available services met our needs, and we didn’t want to use three different applications to solve a problem that a single system should handle.

That’s how the first version of Appa was created. We then made it available to other businesses and adapted it to their needs as well.

Tools and Technologies

  • Back-end development: PHP-based Laravel framework.
  • Front-end: ReactJs.
  • Mobile application: React Native.
  • Data storage: MySQL.
  • Infrastructure: AWS.
  • Code analysis: Sonarcloud.
  • Security check: Snyk SAST service.
  • Access control system: Custom-developed RFID card reader device with WiFi connection.
  • Data update: Ably service (WebSocket and Pub/Sub technologies).
  • Device management: Configuration and updates via pre-configured MDM, remote troubleshooting, and fixing.
  • Error reporting and monitoring: Sentry platform.

Team Members

  • Technical Lead: Antal Levente
  • Product Owner: Sebestyén Róbert
  • UX & UI: Györfi Sándor, Péter Botond, and Veress Kinga
  • Development: Kis Csaba, Rákossy Ágnes, Györfi Róbert, Tassaly Zsolt, Kovács Jácint
  • IoT: Gergely József

Key SAAS Components

  • Web application
  • Mobile application
  • Administration interface
  • Card-based access control system / IoT
  • Presentation website

/02. Brief

Smart and Convenient

Our goal was to develop an integrated system to seamlessly manage and track vacation days. Additionally, it enables convenient working hours accounting with a flexible work schedule. We didn’t want to go crazy dealing with some employees working from home and others in the office, all using the same system.

/03. Challenges & solutions

3.1. Challenge

How do we make requesting and approving vacations hassle-free?

Vacation administration is often cumbersome; inadequate tracking can cause confusion in workforce planning and place a significant administrative burden on managers. In our case, employees frequently switch projects, so it’s important that vacation approvals are flexible and transparent. Managers need to see who is taking vacation and when, so they can plan more effectively. It’s also important for employees to see how many vacation days they have and plan accordingly.

Web app and notifications

After logging in with a PIN code or traditional method, users can specify the dates for their planned vacation, select the type of vacation, and the system sends a notification to the appropriate person. Users can view how many vacation days they have for the year, how many they have used, and how many are left. Before approval, managers can view a timeline of other vacation requests to make an informed decision. Additionally, a separate interface allows setting who approves whose vacation requests, making the approval process easily manageable and transparent.

3.3. Challenge

Inalienable identification

Some clients raised the issue that the card could be alienated, allowing it to be used independently of the authorized person, thus not providing an adequate level of security.

PIN code and profile recording

Mobile access control systems provided a satisfactory solution. Here, along with the PIN code, we record profile data that cannot be separated from the person. This ensures that only the appropriate person can log in during access.

3.5. Challenge

Remote maintenance

We need to configure deployed mobile stations with remote access, and IoT solutions need to be updated and kept up-to-date remotely.

MDM and remote device management

The mobile stations run pre-configured MDM (mobile device manager); this helps keep mobile applications up-to-date and updates the system of the devices. This system also allows us to see which devices are in use and provides solutions for remote troubleshooting.

All card reader devices can be updated remotely, either individually or in groups (by company, version, or geographical location).

3.2. Challenge

How to handle flexible timetracking?

With a flexible work schedule, everyone can work their hours whenever they want. It’s not a problem if someone needs to step out during the day or if something comes up in the morning and they start later. However, logging this can be very difficult; no one wants to track who came in when or when they took their lunch break. This gets more complicated with multiple offices and because many work from home or have hybrid work arrangements.

Access control system, mobile app, and self-reporting

Those working in the office can open the entrance door by touching a card, automatically starting the work hours recording. When they leave, the process closes similarly. If someone goes on a lunch break, they can log out at the mobile station upstairs and log back in after the break. Remote workers can log in and out through a web application. Those who forget to start or stop their work hours from home can modify these, subject to supervisor approval.

3.4.Challenge

Handling changing needs and flexibility

With each client, we encountered new problems that needed solutions. At the same time, we couldn’t afford to have as many versions of the application as we had clients, as this would have significantly increased development and maintenance costs.

Multitenant app and feature flagging

To address this challenge, we designed the system to serve all clients with a single codebase. We recorded some needs, such as company-specific settings, as configurable parameters per company. We solved unique requirements with feature flagging, ensuring that certain functions are only available to specific clients.

3.6. Challenge

Multilingual support

In many cases, there are mixed native language work communities; in such cases, the interface needs to be accessible to everyone in their native language.

Language support

We made the application multilingual, so users can set the language they want to use on the interface. The system automatically displays the appropriate language version based on the set language preferences. Additionally, the system supports further language expansion, allowing new languages to be added.

/04. Results

Tracking working hours

With Appa, companies can more accurately and efficiently track employees’ working hours. Automated reports have significantly reduced manual data entry errors, resulting in more reliable working hour data.

Overtime management

The system allows for more accurate management of overtime. Managers can see attendance patterns and optimize workload planning, reducing unexpected costs.

Leave management

Appa’s transparent vacation tracking has significantly simplified managers’ tasks. Automatic notifications ensure that all vacation requests are processed quickly and efficiently.

Performance evaluation

The application’s data provides an objective basis for performance evaluations. Relevant KPIs associated with individuals can be easily shown, making supervisors’ work easier and ensuring transparency for employees, thereby increasing internal satisfaction and potentially boosting productivity.

Technological stability and security

Security solutions like SonarCloud and Snyk SAST ensure that Appa operates stably and securely, minimizing vulnerabilities and system errors.

Active users: 223

Updated: 2024.06.21