Building a Mobile Inventory Management System: A Cohort 17 Journey

 

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:

  • Designing the project roadmap and collaboration were challenging initially but overcome with tools like Trello and effective communication.
  • Time management was difficult due to competing tasks, but we scheduled combined meeting times to address this.
  • Learning new technologies like Django posed a challenge but was overcome through practice.
  • External factors such as power outages and laptop breakdowns caused delays but were managed.

  • Conclusion:
    With over 10 years in the tech industry, upskilling remains paramount as the landscape continues to evolve. This project has been an incredible journey, enhancing both our technical and non-technical skills and enriching our portfolio. Version 2 is already in the works and promises to be even better, with plans for a mobile app.


    Follow us /contact us lets collaborate and lets do Hard things:


    Deployed URL: benzoic09.github.io/


    Latest