The Workplace Health Monitor application was conceptualized to reduce workplace burn-out. Due to personal and professional stresses, people often find themselves compromising their mental health. Emotional exhaustion, and negative responses to stressful workplace conditions can greatly affect the health and performance of employees in an organization. Workplace burn-out can be a result of feeling unappreciated, overwhelmed with workload, and a lack of sense of belonging.
What it does
The Workplace Health Monitor application ensures to tackle workplace burnout by having a daily survey monitoring the mental and emotional health of all employees in a team. A weekly round-up, with the analysis of the results of the daily surveys is sent to the manager in charge, and a based on the value of that week the manager is encouraged to set up a team building event. Employees will also be alerted of their health score of the week and encouraged to share their ideas to help bring their score up the following week. The Workplace Health Monitor application tracks the amount of time spent on an app, and in intervals of 30 minutes an appreciative message is sent to the employee to take a break. An employee is given the option of choosing to take a break or dismissing a break. If the user has dismissed multiple breaks, they are strongly encouraged to step away from their computer and relax. Employees that have dismissed their breaks multiple times will be brought to the attention of the manager, so that they can be aware of the fact that their coworkers may be overloaded with work. The Workplace Health Monitor application will help assess workload so that managers could be made aware of employees that may be feeling overwhelmed which will in turn reduce workplace burnout. By encouraging frequent breaks, and monitoring the time spent working, and the dismissed break prompts, employees will feel more appreciated and less stressed in the workplace, which will lead to a positive response to workplace conditions. Monitoring the mental and emotional health of the employees will create a more positive environment, which will reduce feelings of workplace burnout
How I built it
Using an open source GitHub repository for an activity monitor we were able to retrieve the data of the time being spent on a specific computer. Using the data retrieved we were able to send a message prompt every 30 minutes of computer use in order to take a break. Using firebase we were able to store employees and their data. Using that data we were able to keep track of how often the dismiss button was clicked, and if more than a certain value, new specialized prompts were sent to the user to take a break. With excessive dismissals the manager is sent a message to perhaps speak to the employee and figure out if they have given them too heavy of a course work. Using survey monkey and their API the response alerts were able to be analyzed which were finally plotted in a graph using matplotlib.
Challenges I ran into
Certain bugs were not reproducible between both Unix and Windows which made it more complicated to deal with certain issues. Communicating with incomplete open source API, and getting familiar with new environments. Learning to use a language as we were programming delayed progress at times.
Accomplishments that I'm proud of
Having working features that were able to complete their task. Having a stable communication between the scripts, the database, and servers. As all teammates do not have a programming background, creating an application in 24 hours from scratch is a major accomplishment that we are all proud of.
What I learned
Programming in Python and using JSON as well as databases. Communicating to a server, and retrieving necessary information. How to set up communication between several platforms.
What's next for Workplace Health Monitor
Workplace Health Monitor would like to pair up people that have a higher mental health score and those with a lower score to grab a cup of coffee and socialize. This would be done by prompting a high scoring user to socialize or take a break with a low scoring user.