Many of you are likely familiar with our MxBlue Blog series, where we highlight those individuals who illustrate the Mendix company culture and vision. But for those of you who are not familiar, this series is meant to promote and inspire Mendix developers across the globe. We understand the pressures, see the changes coming, and are lucky enough to be part of the innovative new future that our customers, partners, and staff members are building – one app at a time. And our goal is to share this insight with you, our Mendix community members.
And today’s spotlight falls on Jasper van der Hoek, project manager at Mendix. Jasper spends his days helping Mendix customers get the most out of the platform, but he still manages to field internal projects as well.
When asked about his side projects, Jasper casually mentioned the suite of project management apps he built to help manage his own project pipeline. So easy!
In his very limited spare time, Jasper took on yet another app project. This time, he had the Mendix staff in mind. As a small company, reserving vacation days had always been a fairly ad hoc activity. But as the team grows, it has become cumbersome to continue with the status quo. Our HR department wanted a way to streamline the process. Luckily for us – we have the tools to quickly build and deploy something in house!
In this interview, Jasper shares details of the project lifecycle. He’s also provided a number of screen shots to help the community visualize the app and even build their own version.
How did you go about gathering requirements and designing the app?
I met with our HR manager to understand her needs for this app. We had a quick conversation where she shared the basic features needed. She wanted a vacation management system – complete with individual contributor and manager features.
From a basic level, it was important for all staff members to access their time off accruals and to submit requests for time off. To make the process as seamless as possible, she also wanted managers to automatically receive new vacation requests and be able to accept or deny those requests from within the new system. Finally, it was important for HR to maintain a high level view of all employee vacation balances. This system needed to replace all previous excel tracking sheets and become the new repository and single truth associated with employee vacation.
Based on this understanding, I was able to build a prototype. From there, we met to review the working app and refine how the functionality behaved.
How long did it take to build and deploy this app?
I built the app using the Mendix App Platform. I started with an empty Modeler and created the necessary infrastructure from there. The app features were pretty easy to set, especially with the help of the App Store. We pulled in a number of widgets and components – including the email module, app cloud (so that all employees can access the Vacation Management System on the Mendix Launchpad), excel importer, calendar module, and many others.
The build phase was very quick because of all of the pre-built components. To give you an idea of how the interface was configured, I’ve included a few frames that highlight the vacation submission and approval screens (both front- and back-end views).
User interface design: vacation submission screen
User interface design: vacation approval screen
Most of my time was spent outlining the logic behind the app. After all, people don’t find it funny when you accidentally mess up their vacation balances! I used two Microflows to calculate employee vacation balances.
The first Microflow showcases the employee balance and the second showcases the updated balance after future vacation is taken into account. In the first Microflow, we also leave room for future flexibility. For example, if an employee moves from full time to part time employment (or vice versa), the accrual rate will need to change. This logic takes all employee data into consideration, so that the calculation will still work as the employee status changes.
Microflow calculating employee balance
Microflow calculating absence day update balance
Within 6 hours, I had the first version of the vacation management app. From there, it was just a matter of cleaning up the interface based on feedback from the team. I also met with HR to ensure that the employee vacation data was pulling correctly. We spent about a day validating excel spreadsheets and ensuring the information mapped correctly as you accrued additional vacation time within the app. With all the feedback and adjustments, we added another 2.5 days of development. Once we were ready, we used the one-click deployment to launch the app.
Were there any surprises along the way?
How much people use it! It’s great to see staff members so engaged and excited about what I’ve built. In the first hour, there were over 60 absence requests from less than 40 people. In addition to the number of requests, I was also very pleased by the volume of feedback I received. Our staff members are able to use the feedback function on the app to log any bugs or ideas for future enhancements. I received a number of interesting ideas that are now cataloged for future releases of the app.
What ideas do you have for a second version?
Well, I’ve already added a lot of new functionality, including the mobile interface. The mobile piece took an additional 1.5 hours. Now, employees can access the app through any device and submit their vacation time from anywhere. I’ve also processed a number of the feedback requests, including adjusting some of the app behavior.
User Interface Design – submit vacation for mobile
We’re all loving our new vacation app. And with many more ideas coming in, we’re expecting to build this out further – potentially creating our own HR portal. Stay tuned for more exciting apps from the Mendix team. In the meantime, we hope we’ve inspired you. Find out what your employees need and build it. Should your company run on Mendix as well?