Looking for a boutique Flutter team for your next release?
Let’s talk
ABOUT PROJECT
Work Ahead is a technology company that specializes in conducting surveys to assess working conditions within enterprises. Using video surveys that are accessible to all, they gather data directly from workers worldwide. This information helps increase transparency about real-life conditions, which companies can then share with their investors and customers.
CLIENT REQUIREMENT
“Our task was to develop an application that conducts anonymous video surveys, enabling us to collect valuable employee feedback on workplace-related issues efficiently and securely. Requirement was to have a completely autonomous application with the cached videos and answers to them, which may be gathered and stored before uploading them. Also, application required to work evenly on various devices.“
BLoC
freezed
firebase firestore
firebase cloud functions
firebase storage
video_player (volume_controller, path providers)
hive
connectivity_plus
BLoC
freezed
firebase firestore
firebase cloud functions
firebase storage
video_player (volume_controller, path providers)
hive
connectivity_plus

We tackled the challenge of parsing data and retrieving it from various sources. Specifically, in Firebase Firestore, file paths and survey configurations were stored separately. Our task was to accurately select the correct configuration, retrieve the necessary information from Firestore using the file’s name, and subsequently present this data to the user.
We were tasked with enabling the app to function autonomously without an internet connection, storing numerous surveys and responses. By implementing caching for video downloads and uploads, we ensured quick access to content without needing to reload from the server each time. This approach optimized resource usage and enhanced app speed.
To ensure efficient data usage and faster load times, we implemented incremental downloading. This method involves downloading only the resources not already present on the device. If parts of the survey data were previously downloaded and stored either on the device or the server, the system would only fetch the missing or updated portions, preventing unnecessary data transfer and accelerating the process for the user.
We ensured seamless video playback by enabling videos to play sequentially and continuously. All videos were cached to guarantee smooth playback and avoid viewer confusion. A significant challenge was parsing the layout data, which was provided in HTML and CSS file formats.
We ensured that the application was adjusted and performed well across various screen sizes and devices. We included not only the most commonly used devices but also such models as Nexus, Motorola, and Nokia, which have unique appearances and function differently from other Android devices.