HACKER Q&A
📣 ConfusedDev123

Washed out PHP Dev – What to do next?


Some background: I'm about to turn 39 and live in London. My last job for 5 years was vanilla PHP. I'm about junior to mid level in PHP and very very junior in Python. Average intelligence, can maybe focus about a few hours a day max. I quit alcohol and in good fitness. I've got funds to last me about 4 months.

What to learn next? What to branch into?

At first I thought Laravel and React, but the job market in London for this is small, compared to Python. But when I search for Python I see many things listed for additional skills, like AWS, Node, Ai, big data and so on.


  👤 hnisoss Accepted Answer ✓
This is what worked for few of my friends who were laid off last year (I am a assistant professor on local uni but I own dev agency and dev 9-5 as pythonista!)

  1. learn python 
  - https://books.trinket.io/pfe/ + https://python.swaroopch.com/ (in parallel)
  - https://effectivepython.com/ (skim, dive deeper once you have job)
  - https://www.programiz.com/python-programming (skim, look at examples, type out)

  2. apply python 
  - https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world
  - miguel tutorial is all you need to get hired. go through it meticulously, make sure you understand everything
  - https://www.fullstackpython.com/ (skim, just so you know the keywords)

  3. update your cv
  - this step is optional and shady, but will improve your odds
  - reuse all your current experience but replace php tech with python (switch keywords)
  - if your cv entries are <1.5y change the dates, recruiters prefer 2-3 years per entry.

  4. find job asap, contiue grinding once you have job.
  - if you understand miguel tutorial, you can learn everything else you need once you got the job
  - market yourself as python software engineer/ devops python, NOT junior, NOT senior
This works.

if you have more questions, shoot :)


👤 DamnYuppie
Don't be put off by the laundry list of skills posted on job listings. Most of what they want will be superficial or if it is very detailed and critical it is VERY unlikely they would cut the new guy lose on it. I would say focus on Python, AWS/Azure. Most companies don't have a clue what they are doing with ML or AI so they are just chasing a fad. By all means bone up on it in your spare time but don't let it put you off from applying.

👤 sandreas
I was in a similar situation and I would strongly recommend to leave your comfort zone completely regarding the language and the technology. Python is a great language, but not your only option. In companies Java and C# are very common - and the advantage of these languages might be, that you learn about interesting concepts, that you possibly would not have to learn in another scripting language.

My advice is to start working on a fresh open source project of any kind of new technology. By that I mean a piece of software you would use yourself (e.g. an image conversion tool), not something like "advent of code 2023" or pull requests for an existing framework. Focus on shipping something useful...

One thing I noticed for myself is, that a private / open source project will not help you too much to land a new job in a bigger company, if it is not something everybody knows. I could not convince potential employers of my Java skills, even though I had worked on a presentable project a lot. In smaller companies the HR people tend to listen a bit more :-)

As soon as you have something to show, try to get a foot in the door in a smaller (but promising) company desperately looking for developers. Most of the time there is at least one person you can learn from and working for 8 hours a day is a completely other level than doing something for 2-4 hours a day in your free time.


👤 qup
Learn how to get a job next, 4 months isn't that long. Just get that situated.

If you have to learn a new skillset before getting a job in the skillset, you've got a mountain of work to do, and you probably will need to get lucky. Just get a job with the skillset you have, and then work on the new skillset.

There's lots of fun tech to explore. Figure out what you want to build, figure out what a cool stack would be for that, and build it. Deep dive the interesting parts. I'm playing with Rust because I think it fills in some of my weaknesses.

My advice is always for people to dive into things, but taking a risk here doesn't really net you any reward. Don't go broke for Python.


👤 mattl
It can certainly help to learn some Laravel stuff, it seems that's where a lot of PHP stuff is heading. Good luck!

👤 whatever_yeah
If you've been working in nothing but PHP, you assumedly know web dev. HTML, CSS, Javascript, the principles of APIs and REST, Database access, etc.

If you have strong fundamentals in all of those, the language abstractions on top of that should be very straightforward for you to pick up.

People will blast me for this, but my honest advice is "fake it till you make it". If you can confidently convey your expertise in the interview, and pass the tech screen, and rapidly get up to speed if/when you're hired, then that's all that really matters. Most job listings don't tell you the negative stuff either.

How does the company you're applying to know what you worked on at your previous roles? They don't. Don't tell everyone all your sins. Vanilla PHP and cruddy WP template work, all deployed with FTP? No, you worked on Laravel with React, and maintained the CI/CD pipelines for deployment. Don't sell beyond your means, but appreciate that if you were stuck working on garbage and they refused to let you use best practices, you have to look out for youself.


👤 solardev
If you wanna hate your life and suffer for a few more years, Drupal is still around and there are companies looking for people to maintain their old Drupal 7 installations or rewrite them to 8/9.

Drupal is at the very top of my "never again" list, but I was surprised how many consulting firms there still were for it.

You're not going to gain any more relevance doing that, but it might help pay the bills in the interim?

-----

FWIW I was a PHP dev too before transitioning to the React world. I LOVE it, but the jobs are all gone now and the market for mediocre frontend devs is extremely saturated, lol, and we'll probably be replaced by AI soon. Wouldn't recommend entering it now.


👤 0xy
I highly recommend you branch out into TypeScript, Node and React -- all of which are relevant in this job market AND, most importantly, are easily accessible from a PHP background.

There are some Laravel openings but it's still quite niche as well.


👤 janosdebugs
I've been where you are, right about when Zend Framework 2 was becoming hot. I first moved to Hacklang then Java. I reimplemented many of the things I knew from vanilla PHP into those languages, such as a dependency injector, routing, PSR-7, etc. It taught me a lot about strictly and statically typed languages. I then moved to Go and have diversified since. This is a route you can take if you want to move lower in the stack and you like strictness.

If you don't like it, Python is a very reasonable choice as it is very much in demand.


👤 aaronrobinson
Defo learn another language as it will help selling yourself as well as giving you a better balance. Python and JavaScript are probably the most accessible. If you’ve been developing web apps I’d sticky to that but with a different language. In your shoes I’d learn JavaScript just because you can use it on front and back end. AWS is more important when you start deploying stuff but most companies have ops/devops doing that. Focus on the language side first. Forget AI for now. NodeJS is defo worth learning.

👤 kbrannigan
PHP tooling is top tier and very mature.

The syntax of php is a little awkward and setting up debugging can be hard.

But the frameworks are solid: Symfony, Yii are really nice and modern.

My ideal framework would be, the syntax, typing and of c# , the tooling and libraries of php, the admin and forms of Django, the easy deployments of JS.


👤 dtx1
I would strongly suggest looking into something other than programming for a little while. Tech Support/Admin work will be easy to do with your tech background. This will stretch the time you have to get certified in AWS and learn a language in depth.

👤 aristofun
You will keep suffering as long as you consider yourself junior in language A while having 5y experience with language B.

👤 potsandpans
Honest question: how are you a junior to mid junior after working for 5+ years?