Jobdeck

After hearing from people in my network how hard it can be to get a job interview let alone getting hired, I started working on Jobdeck to make that process easier and more manageable for them.

Introduction

Over the last few months, I’ve had plenty of chats with people in my network, and one problem kept coming up again and again: job applications. Even if they weren’t personally dealing with it, someone they knew, whether a friend, family member, or colleague, was. It got me thinking, "Why is this still such a struggle for so many people?" That is what led me to start building Jobdeck.

The Challenge

Hiring tools for companies are everywhere. There are AI-powered systems that screen and categorize applications, platforms to keep everything organized, and plenty of options to make hiring faster and easier. But what about the applicants? For them, the process is exhausting.

Applying for jobs feels like running a marathon you didn’t sign up for. Tailoring resumes, filling out forms, and keeping track of deadlines can take so much time and energy. And let’s face it, most tools out there don’t make this process any easier.

That is why I decided to create Jobdeck. It is a platform that helps applicants streamline the entire job-hunting process. It saves time and effort while keeping things personal and tailored for each application. Jobdeck flips the script by giving job seekers a smoother and smarter way to chase their dream jobs.

Technology

To bring Jobdeck to life, I have chosen a tech stack that is both practical and powerful:

  • Laravel for its flexibility and strong ecosystem.

  • Inertia with VueJS to create a seamless experience between the backend and frontend.

  • Tailwind to make styling fast and consistent.

For the AI features, I am using OpenAI’s API with GPT-4.1-mini. It strikes the perfect balance between getting great results and staying affordable. I also debated using Laravel just as an API layer but decided against it. The current setup makes it easier to adjust things quickly and keeps the project flexible for future growth.

Progress and Learnings

Building Jobdeck has been a journey filled with challenges and breakthroughs. Every challenge has brought something new to learn. Here are some highlights of the problems I faced and how I tackled them:

Decoding Many-to-Many Relationships in Laravel

Pivot tables are not new to me, but figuring out how to use them properly in Laravel was a learning curve. It was a bit of a trial-and-error process at first. I read through documentation, tried different approaches, and eventually got it working smoothly. What I learned here has been valuable for improving my understanding of Laravel’s relationship handling.

Making the Frontend Feel Responsive with Jobs and Queues

Some tasks, like processing AI-generated responses or handling large data sets, can take time to complete. Initially, this caused the frontend to hang and gave users a poor experience. To fix this, I implemented jobs and queues to handle long-running tasks in the background. This way, users can keep interacting with the platform without being blocked by loading screens. The result is a snappier, more responsive interface that feels polished and user-friendly.

Improving AI Data Formatting with Function Calling

At first, the raw text output from OpenAI was tricky to format into something clean and visually appealing for the frontend. I wrote a detailed function to handle this and made significant progress. Later on, I discovered function calling and structured responses, which were game changers. Switching to this approach made the formatting process much more reliable and consistent, saving me time and improving overall user experience.

Balancing Iteration Speed with Architectural Choices

Another key decision was not separating Laravel into an API layer. Instead, I built it as an integrated solution. This choice allowed me to iterate faster, make changes easily, and adapt the system as I learned more about user needs. It has been a reminder of the importance of balancing technical best practices with real-world flexibility.

Every step in this process has been an opportunity to learn, whether it was digging deeper into Laravel features, optimizing workflows, or finding creative solutions to make Jobdeck the best experience for its users. The project is still evolving, but the journey so far has been incredibly rewarding.