Overview
Dokodemo-Kerja is an attendance and productivity management application designed office work attendance. It addresses the challenges faced by organizations in monitoring and optimizing employee performance, particularly in remote or work-from-home (WFH) scenarios. This versatile tool caters to businesses of all sizes, offering a user-friendly interface coupled with robust features to streamline workforce management.
Features
- Task Assignment: Facilitates the allocation and tracking of specific tasks, enhancing project visibility for supervisors and managers.
- Flexible Time Logging: Incorporates intuitive "Start" and "Stop" functionality, eliminating the need for traditional time cards and promoting adaptable work schedules.
- Work Duration Monitoring: Accurately captures and aggregates individual employee work hours.
- Leave Management: Streamlines the process of tracking available leave days, their validity, and simplifies the online application procedure.
- Geolocation Services: Utilizes GPS technology to pinpoint the real-time location of active employees for app and web usages.
- Comprehensive Reporting: Generates detailed summaries of work hours across daily, weekly, and monthly timeframes.
- Store Listings: The app is listed on Google Play Store and Apple App Store for distribution.
Tech Stack
- React Native for cross-platform mobile development
- Redux for state management
- Axios for API communication
- React Navigation for seamless app navigation
Lessons Learned
This was my first production app using React Native. I learned a lot of things from this project. I learned about the importance of good documentation and how to work with a team to deliver a product on time. I also learned a lot about React Native and its capabilities and limitations. One particular challenge was the integration of geolocation services, which required a good understanding of the technology and how to implement it in a React Native app. The app was integrated with backend system handled by different teams, and I learned a lot about API integration and how to work with different APIs.
In this project I was also responsible in its listing on Google Play Store and Apple App Store. During this I learned about the their differences and the flows of how an app being distributed for mobile device. One particular challenge that I had was the Apple App Store have a lot of restrictions and things to take care of to make sure the