Sit back and relax as I take you through a journey from an
idea to an actual real-life product. As indicated by the thumbnail image and
the blog title, we have developed an Inventory Management System, specifically
tailored to mobile device management.
Over the past 8 months, our team (Cohort 17) has embarked on
a learning journey with the ALX program to gain practical knowledge on becoming
software engineers. This journey has been more challenging than climbing Mt.
Kenya (on a lighter note). As the foundation program draws to a close, we were
tasked with developing a real-life product that not only solves an existing
problem but also showcases the skills we have acquired.
At first, the task seemed daunting, but once we broke it
down into manageable bits, execution became easier. Collaborating with Mr.
Steve (https://github.com/steve9948), a seasoned frontend developer and unit
tester, proved invaluable. With his expertise in frontend development
complementing my backend skills learned from the program, we hit the ground
running.
With only a month to execute and deliver a functioning product, we set out to address a problem we both encountered in our day jobs but lacked a comprehensive solution for. Many established companies, both in Kenya and beyond, issue mobile devices to employees, making it challenging to track who has what device and SIM card number.
To tackle this issue, we conducted a survey and found
existing solutions on the market to be either too expensive or overly
complicated. Armed with this feedback, we set out to develop a solution of our
own, which proved to be more challenging than anticipated.
Our inventory management system,
allows for the allocation of mobile devices to employees and real-time
tracking. It is user-friendly, efficient, and currently open-source (with plans
for a commercial version in the future). Additionally, being web-based
eliminates the need for installation.
Features and Functionality:
1. Landing Page: Provides an overview of the app's functionality and serves as the admin login portal (https://benzoic09.github.io/).
2. Dashboard: Summarizes all allocated devices with an allocation button.
3. Devices: Allows for the addition of mobile device details, including model and phone numbers.
4. Employees: Lists employees to whom devices will be allocated.
Overview of Technologies:
Our inventory management web app was built using a
combination of technologies to deliver a robust and efficient solution. Key
technologies include:
Django:A high-level Python web framework used for server-side development, URL routing,
and database management.
HTML/CSS/JavaScript/jQuery:
Standard web development
languages used for user interface structuring, styling, interactivity, and
dynamic behavior.
We chose these technologies to solidify our understanding and leverage their capabilities effectively.
A simple diagram to illistrate on the flow of the system:
Challenges Encountered: