Inspiration
Remote work is new to many of us, but we are getting used to it. However, along with its benefits, it comes with many downsides such as little work-life balance, feeling alone with no friends to have a quick coffee or a water cooler chat. This lead us to build something to reduce such issues and make Remote Work fun!
What it does
Allow you to register your company on the platform, add employees, add monthly & daily rewards and distribute them in a really fun & engaging way.
Here is a brief overview of what it does.
- Register Company
- Add Employees (they are invited to the platform using email)
- Add Daily & Monthly Rewards
- A few random employees are picked by the system very smartly (so the selected users are different on daily basis)
- A fun company-wide challenge is assigned to the selected employees
- This challenge description along with today's participants are posted to a dashboard visible to all employees
- Selected employees get an email with the challenge page link
- On visiting the link they are presented with the challenge description and an option to record a 1 min video
- Submitted videos from every participant is posted to the dashboard where all employees can react to the submissions
- At the end of the day, the system automatically generates a poll of today's participants for voting
- Poll is posted to dashboard where employees can vote for their favorite submission
- Winner is announced and presented with Daily Reward added by the company
- Cycle repeats the next day
- At the end of the month system automatically pick a random winner smartly (based on multiple factors i.e. reactions and engagement)
- Winner is presented with Monthly Reward added by the company
- Cycle repeats
Example Rewards
- Daily: Some bonus, Extra Break Time, etc.
- Monthly: Some bonuses, A Day Off, Digital Subscription (Netflix), etc.
How we built it
The tech stack we used is at the end of this section, here is how we build the entire thing.
Selecting the Challenge
A 1-hour meeting was scheduled to discuss all the challenges and decide what to pick. After exploring all the challenges we liked the idea of contributing to making remote work fun! hence we picked the RemoteBase challenge.
Thought Process
We thought we can reduce loneliness in remote work if we somehow can engage employees in fun activities. The activities that are simple enough so everybody can participate along with engaging enough so that everybody can engage, and rewarding enough so that there is an Ahaa!!! moment during remote work.
The Technical Stuff
- Core expertise of our team is Ruby on Rails, so this became our framework of choice
- We used PostgreSQL as our database of choice because it is relational and go hands in hand with Rails
In our database schema we have the following tables:
- Company
- Employees
- Challenges
- CompanyChallenges (company-wide daily challenge)
- EmployeeChallenges (selected employees for a specific day)
- Submissions
- Poll (to create submission poll)
- PollVotes (used to store votes against submissions)
- Rewards (daily, monthly)
- Winners
When a company adds an employee an email invitation is sent to the employee with his credentials (which he can update later)
Once joined, an employee can see a dashboard that shows
- Today's Challenge
- Selected Participants
- Submissions
- Voting Poll
All winners are shown in a separate section
Challenge Creation & Participants Selection
Challenges are created automatically on daily basis, and here is what's happening behind the scene.
- A cron job starts at 12:30 AM (scheduled with Heroku Scheduler) and assign a random challenge to the company
- For each company system smartly pick 4 employees and assign challenges. The system makes sure that employees selected have not completed any challenge in recent days so that everybody has a chance for selection
- Why just 4? We think 4 submissions throughout a day won't impact the actual work and casually engage everybody without being too excessive, this way we have a capacity of allowing around 120 different employees to participate
Challenge Submission
Upon selection the selected employee get a challenge link via Email, visiting that link leads to a page where the employee is presented with:
- Challenge Details
- An option to record (1 min) video of the challenge
- On submission, the video is uploaded to S3 (AWS cloud storage) and a ThankYou note is presented to the employee
- System reflects the submissions in employees Dashboard for reactions & views
Voting Poll
At the end of the day (around 4:30 PM) a Cron Job runs and create a poll against today's submissions for every company
This pole is presented in Employee Dashboard for voting, and employees vote for their favorite submission
Winners
Winners are selected by the system (the employee with the most votes) and presented in the winner section
Monthly Winners are selected from daily winners (randomly).
Rewards
Rewards are added by the company and distribute to the Daily and Monthly Winners.
Rewards examples are given in this section
Tech Stack
- Ruby on Rails
- PostgreSQL
- HTML, CSS, SCSS, BootStrap
- Ajax, JQuery
- AWS S3 (cloud storage)
- Heroku (for deployment, and scheduling tasks)
Other Tools
- Figma (for UX & UI design)
- ConceptBoard (for flow design)
- Git (for versioning)
- Meet, Skype, Slack & Whatsapp (for team communication)
Challenges we ran into
- At the 11th hour we lost our frontend dev due to his sickness, and we needed to complete that part on ourselves.
Accomplishments that we're proud of
- We, as a three-member team are able to go this far in this hack fest along with handling all backend, front-end, and communication remotely.
What we learned
- Time Management.
- Team Communication.
- Satisfaction of resolving a global issue.
What's next for Remote Fun - Desi Developers
- We are planning to extend this to a full-fledged product. We have already implemented the Figma design which we will show you in the demo.
Built With
- ajax
- bootstrap
- conceptboard
- css
- figma
- github
- haml
- heroku
- html
- html5
- javascript
- postgresql
- ruby
- ruby-on-rails
- s3
Log in or sign up for Devpost to join the conversation.