The Challenge
The job search process can be overwhelming and disorganized, especially when applying to multiple jobs at once. Keeping track of all the applications, their statuses, and any updates can be a challenge. I wanted to create a tool that would help job seekers stay organized and make the job search process less daunting.
Process
To build Indago, I followed these steps:
Gathered requirements and planned the app's features and user interface.
Developed the frontend using React, Redux Toolkit, React Router, TailwindCSS, and Axios.
Built the backend with Node.js, Express.js, MongoDB, and Mongoose.
Implemented user authentication and authorization with JWT.
Added Cloudinary API for image uploads and Recharts for data visualization.
Tested the app and fixed any issues.
Deployed the frontend on Netlify and the backend on Railway.
Tech Stacks
Indago uses the following tech stacks:
Frontend: React, Redux Toolkit, React Router, TailwindCSS, Axios, and Recharts
Backend: Node.js, Express.js, MongoDB, Mongoose, Cloudinary API, and JWT for user authentication
Solution
Indago is a web-based job tracking application that helps job seekers stay organized during the job search process. With Indago, users can:
Add job listings and track their progress using a customized job pipeline.
Receive updates on any changes to the status of a job.
Upload images of job listings using Cloudinary API.
Visualize job application data with Recharts graphs.
Enjoy a clean, user-friendly interface that is easy to navigate The frontend is deployed on Netlify and the backend on Railway.
Key takeaways
Planning and gathering requirements is crucial before starting any project. It helps to identify the scope, features, and user interface of the application.
Using a modern tech stack such as React, Redux Toolkit, and Node.js can significantly improve the development process and increase productivity.
Proper testing and debugging can save a lot of time and effort in the long run. Testing should be done at every stage of development to ensure that the application is functioning correctly.
Deploying an application on platforms like Netlify and Railway can make the deployment process easier and quicker.
Feedback from users is valuable and can help improve the application. Regular updates and bug fixes can help keep the application relevant and user-friendly.