April 27, 2023 - Hackathon Presentations

Today at Civalgo, we celebrated the completion of our latest iteration with an activity day, during which everyone presented their work from the past iteration. Participants included interns, programmers, designers, customer experience, sales, marketing, and even the CEO. I found this recurring exercise beneficial for the company, as it fosters communication, transparency, and understanding of colleagues' work. It cultivates a stronger team atmosphere and encourages everyone to take ownership and responsibility for the business's success. It's also a fantastic opportunity to showcase your accomplishments to your peers, pushing you to be a better professional.

Additionally, during the presentation, we also showcase the projects from the hackathon conducted yesterday. This activity led to an abundance of brilliant ideas that I'm excited to share with you. To finish the day, as a means of celebration and bonding with our teammates, we enjoyed an afternoon of bowling at an entertaining alley. I may have indulged in a little too much sangria, but I was genuinely impressed by the bowling prowess of several colleagues. Without further ado, let me present the hackathon project my team put forth:

Infrastructure for SMS, Push, and Email Notifications

A colleague of mine focused on enhancing the notification system within our application by experimenting with a new technology called Novu. This technology enabled the delivery of notifications not only in-app, as we currently have, but also via SMS, email, and mobile phone push notifications. What makes Novu intriguing is its ability to consolidate various providers into a single workflow, streamlining the management of notification behavior. Many customers have requested email notifications in their email toolbox, so this proof of concept for the technology is highly valuable for customer satisfaction and user retention improvement.

Enable offline behavior in our web app

Another project presented involved enabling the web app to function even without internet access, allowing users who sometimes work in isolated fields to store information in the app. When they return to an area with internet connectivity, the stored information would be transmitted. This feature was requested by some of our largest clients who operate in vast fields outside urban areas and require a method to create logs offline. This challenge was demanding for us, as our goal is to facilitate real-time communication and information sharing across companies, which is difficult when a user lacks internet access. However, we must adapt to our client's realities and find ways to assist them.

Adding a vision AI to our pictures taken

Another impressive project presented involved processing photos taken with our mobile phones within the Civalgo mobile application using AI. The AI would scan the images to generate a description of the contents. Additionally, the presenter added a feature for documents captured in photos, enabling the system to scan all text and create a digital copy of the scanned document. Such functionalities would be extremely beneficial for clients who may have thousands of images for a project and need an efficient way to search for specific documents. Digital descriptions, combined with a powerful search function, would make locating necessary documents easier and save time, increasing productivity. These features align well with Civalgo's mission to enhance our clients' efficiency.

Generation of Mobile Development Build in the Cloud

A teammate experimented with a technology called EAS from Expo to enable internal distribution of our mobile app's development version by building it in the cloud. This approach allowed everyone in the company to access the latest version of the app without needing to build it on their machines or use Android Studio for Android devices and Xcode, which only works on a Mac for testing the iOS version. This streamlined development process makes it easier for developers to code new features without having to recreate the build process, as those steps would be automated. Additionally, he worked on generating QR codes that could be scanned with a phone, providing a download link to the app, and offering an effortless way to access the development build.

Generation of Mobile Development Build in the Cloud

Two product designers collaborated to develop a new concept for generating daily logs in advance based on the project description from the product manager, primarily focusing on the start and end dates of various scheduled tasks. This information can be viewed in the short term view, assisting dispatchers in seeing the diverse needs of all company projects. Consequently, dispatchers can easily allocate a team of resources to a project based on the information with just one click. Improvements like these in the user interface to help simplify tasks are highly appreciated by our users. For clients who have multiple small projects every day, such enhancements are game-changers.

Daily log's shareable link

Another hackathon project explored the possibility of creating a shareable link that would grant access to a daily log without requiring the viewer to be a user of the company for which the daily log was created. This feature would enable easy sharing of a read-only daily log with potential stakeholders such as our users' clients, general contractors, auditors, etc. The project also introduced the idea of adding interactive functionalities for the link recipient, like the ability to sign a daily log for approval, which has been expressed as a desirable feature by some clients. Currently, many clients print reports for signing, but incorporating this functionality could streamline the process and make it entirely digital. Providing a way to share daily logs with individuals unfamiliar with Civalgo could also serve as an excellent introduction to potential users and function as a valuable marketing tool.

Team management on the mobile app

At present, the mobile app is designed for creating individual daily logs, while the web application focuses on managing teams of employees' daily logs. One of our teammates worked on exploring the option to include a view of different teams within the mobile app, enabling users with appropriate permissions to manage them easily on their mobile devices. This feature would allow users to manage their teams directly from their phones without needing to switch to a computer.

A timeline view of the history and scheduled position of the resources

For our average clients, managing hundreds of employees, equipment, materials, and other resources can be a daunting task. Keeping track of a resource's current location, as well as its planned schedule in the coming days or weeks, can be quite challenging. Aiming to address this issue, a team at our hackathon developed an innovative timeline view. This solution not only lists all resources but also displays their project assignments and positions on the x-axis, giving users a comprehensive overview of each resource's status and allocation.

This detailed view provides valuable insights into resource planning and history, helping schedulers ensure that all resources are effectively allocated to various projects. It also allows them to spot potential overlaps or gaps in scheduling and make necessary adjustments. Additionally, the timeline view aids in making better logistical decisions by presenting a clear visual representation of resource distribution across multiple projects, enabling schedulers to optimize resource utilization and minimize idle time.