March 13, 2025

The Junior Dev Job Market

juniors

As anyone who has read my previous blog entries knows, I’m on the lookout for full-time employment as a developer. And as anyone old enough to run a paper route can attest, it’s tough out there right now for those looking for a job. And no one has it tougher than those applying to junior web developer positions—unfortunately, I belong to that (very large) group.

Before I go any further, let’s get two things out of the way:

  1. This isn't a whine post. I’m not big on complaining in general, unless it’s truly warranted (we may get to that part later).
  2. This isn't a thinly veiled “I’m special please hire me” plead for help. I currently have a job and, financially, there’s many people who are worse off than me (I saw a Reddit post by some guy the other day claiming he would be homeless if he didn’t get hired ASAP). I want to be a professional web developer but it won’t be the end of the world if it doesn’t happen soon.

Though of course I do have to write about this, because it’s part of the main narrative arc of Django Horizons! I recently wrote a very long post on a topic only very tangentially related to my story as a developer, so I thought I should get back to the main focus of this project.

I first learned Django from Eric Matthes’ excellent Python Crash Course and later from Will Vincent’s books. For some reason, I fell in love with the framework—there's something very clean about Django code (maybe it's the Python syntax?). At the same time, it comes with almost everything you could need to build a website. I soon decided that I would learn Django in-depth and look for work as a Django developer. Along the way, I studied other tools and built a portfolio of projects, eventually ending up with what I thought was a well-rounded skill set that made me feel reasonably qualified—at least as an entry-level developer. On top of experience in languages like SQL and JavaScript, here’s what I came up with:


skills

(This is just a screenshot from my portfolio page)


Besides that I made a couple of projects that in my opinion didn't suck (the bet tracker I'm actually moderately proud of), took care that they looked ok, and sprinkled in HTMX and Alpine.js to make them feel like a SPA.

I then started applying for open positions. I also cold-emailed a bunch of people I had read books or blog posts by, or that I knew were big names in Django World, or that I knew ran companies that relied heavily on Django for their tech stack; some of them answered and were helpful, some answered but weren't helpful, and about half never answered (not that they should of course, they don't know me and owe me nothing).

So I started looking for 100% remote openings that were web development related and had Python as a significant requirement. I would skip all the fullstack JavaScript ones (because I know only basic Node.js and have never touched React), and even Python-related ones I would not bother applying if they were evidently senior-only positions. Early this month I also emailed every significant Wagtail agency offering to work for very cheap.

Now some numbers:

  • I estimate I have applied for in the range of 300-500 openings in the past 2 months, using mainly LinkedIn and a couple of other sites that are more LATAM oriented.
  • I'd say I've heard back from about a third of them, the vast majorit being in the negative of course.
  • I get the feeling at least 10% are literally fake jobs/scams/never intended to hire applicants. Since I started applying, I've gotten significantly more phone spam/scam calls than before.
  • I've had 3 interviews from jobs I applied to. All three I felt were serious interviews, where the recruiter or senior dev was asking me questions while looking at my resume or GitHub page or both. One later sent me an email informing me that they picked someone else. Another — a big nearshore agency — literally made an offer (which I think was real because of how much they lowballed me salary-wise) after I performed well on a technical interview with a senior dev, I said yes and they said they would assign me to a project and only then have me sign a contract, and then never did assign me to a project or contact me again. The last interview was this week, I think I did well but I haven't heard back.

So yeah, not doing too hot. Having done a few interviews though, and having I think performed adequately in them, at least makes me feel like not a complete loser. It's not like I expected to have it much easier than this though. I knew the job market for developers was in the toilet post-pandemic, that Django has seen better days employment-wise, and that having no full-time experience and no CS degree would only make things harder: doing web development on and off for 15 years is equivalent to exactly 0 years of professional experience.

I do think it's possible to get a job though, especially for people in Latin America like myself: the offsourcing of software development to cheaper regions seems to be happening at an enormous rate, and I think readers from the first world would be surprised at how little money (in US dollars) one needs to get by in developing countries. If, on top of that, you add LLMs making senior devs individually much more productive, I cannot imagine the hellscape that american and european juniors must be traversing.

Plus there's always a type of job opening which one can tell are from startups: they don't pay very well, are open to less experienced people, and provide little to no benefits. The main difficulty I've encountered is actually that, as far as I can tell, there aren't that many new projects using Django. There's some Django openings, but I will see Node.js, .NET, Spring Boot or even Golang all over the place. With regards to Python, FastAPI seems extremely popular with newer projects, with Django and Flask a distant second and third place respectively.

(By the way I've seen a fair number of bootcamps teaching Flask nowadays, and there just aren't that many job openings asking for Flask, at least compared to FastAPI and Django. Unless most of those people start their own startups, I think that section of the job market could get really ugly down the road)


jobs

(I shouldn't have given up on Node.js back in 2019, amirite?)


I don't have too much more to add about my job search: I'll keep at it until something comes up. I'll probably start learning FastAPI and React for employment purposes once I have more time in the coming months: I would much rather work with Django, even doing just backend stuff with Django REST Framework, but the job market is the job market and juniors can't be choosers.


Comments

Leave a Comment

captcha

© 2025 Nicolás Ferreira. All rights reserved. Landscape Vectors by Vecteezy.