AdminTrack
Introduction
AdminTrack is an application for administering education, effortlessly. My partner, Priscah Reginah Shikanda and I, developed this app in a span of one month. Both the Team Members took on the roles of Full-Stack Developers for the project, by collectively handling both backend and frontend development tasks. This decision was made out of necessity to ensure that all aspects of the project are covered, including both backend and frontend development. While frontend development is not our primary expertise, we collaborated and learnt as we progressed through the project. This approach allowed for a balanced workload distribution and ensured that the project moved forward even in the absence of a dedicated frontend developer. It also provided an opportunity for skill development and learning during the project.
Target Audience
AdminTrack is a school management system for administrators that aims to tackle the intricate challenges faced by educational institutions in efficiently managing their administrative operations. These challenges include:
Motivation behind AdminTrack development
Oddly enough, I did not care about administration and school management system. We were given a week to brainstorm which application to develop as a portfolio project. While brainstorming on different ideas, my partner suggested that education institutions face data management, data security and compliance, and efficient administrative workflow challenges. Considering that I’m a graduate from one of the Kenyan universities, I understood the challenges of manually managing records. So, I agreed with the idea of developing a school management system for admins, where administrators can easily view, add, update, and delete students, teachers, employees, books, and attendance records.
Technologies used while developing AdminTrack
Architecture
Technologies
For backend development, python was used as a primary language in collaboration with Django and Django REST frameworks. The decision to use Django and Django REST Frameworks was made due to the project's scope, which require a comprehensive framework to handle various features like user authentication, database management, and RESTful API development efficiently. Django's built-in components and the availability of Django REST Framework made it a suitable choice for a school management system.
For frontend development, we used JavaScript, HTML, CSS, and bootstrap framework. The languages helped in frontend interactivity, dynamic web features, structuring web pages, and styling the user interface. Bootstrap was chosen primarily due to its widespread usage, extensive documentation, and a vast community of developers. These factors made it easier to find resources, templates, and plugins that speed up the development process. Additionally, both team members are primarily backend heavy with limited frontend experience. Hence, Bootstrap's well-defined components helped to streamline frontend development tasks.
领英推荐
Overview of completed features
Technical Challenge
During the development of the AdminTrack, a significant technical challenge emerged when implementing the real-time synchronization of data across multiple modules. The objective was to ensure that updates made in one module, such as user management, reflected instantly in related modules like information management. Achieving this synchronization was crucial for maintaining data consistency and providing administrators with an accurate and up-to-date view of the school's information. To address this challenge, we adopted a robust messaging and event-driven architecture. We implemented Django signals and message queues to facilitate asynchronous communication between different components of the system. This allowed changes in one module to trigger events that propagated updates to relevant sections without causing delays or disruptions in the user interface. By employing this approach, we successfully overcame the synchronization challenge. The real-time update mechanism ensured that administrators could seamlessly navigate through different modules of the school management system, confident in the accuracy and timeliness of the displayed information. This solution not only enhanced the user experience but also laid a foundation for scalability and future expansions of the system.
What I learned while developing AdminTrack
Conclusion
I am a versatile and adaptable engineer with a passion for creating impactful solutions. My experience in developing a school management system using Django and Bootstrap has honed my skills in leveraging advanced features, emphasizing automated testing for code reliability, and prioritizing user feedback loops. This project has not only reinforced my technical proficiency, but also highlighted my commitment to continuous improvement and user-centric development. As I navigate my engineering path, I am driven by a desire to explore cutting-edge technologies, enhance scalability, and contribute to solutions that positively impact diverse domains.