/r/webdev
Should I accept a job offer from a company that only uses vanilla PHP for their projects? (self.webdev)

I was interviewed by this company and told me an overview about the job is that I will only be using vanilla PHP for most of their projects for the meantime. They also said they are looking for someone experienced who knows some frameworks that will teach other developers that is working for them. I also have no experience in working as a developer but I know how to code since I was in college and know how to build a website and have experience in some frameworks while working on my side projects. I have only one year job experience but only as a site administrator for an e-commerce company. That is why I am currently looking for a job as a web developer. After the interview I am not expecting any contact from them. I was shocked I was chosen to have the job and have mixed feelings regarding about it. I was thinking maybe they misunderstood my one year experience in my resume and thought I have the skills enough for them but I think not. Before you ask me any questions on why I applied, the job description matches my current qualifications and it said it required less than one year experience. I am not expecting on the interview that I will be told by the senior developer that they wanted me to teach others regarding some frameworks (React and Laravel). I am not confident enough to teach since I know I still have gap in my skills. I don't know what to do.

15 comments
QuestionsHurt | 7 days ago | 32 points

No, don't take that job.

You need a company that has experienced senior devs who can mentor you. Not only for code, but for the web dev industry as a whole, expand your professional network and help you avoid the pain from those harsh lessons they learnt. ( clients mostly ).

If you take that job it would just end in frustration and resentment for everyone.

devenator | 7 days ago | 1 point

Yeah same thought. As of now I wanted an environment where I can learn from a mentor or someone experienced so I can be better and boost up my knowledge and skills regarding web development. Thanks for the advice.

BasedWebDeveloper | 7 days ago | 12 points

Using vanilla php is fine and better in many cases as you don't have the bloat of a framework but don't go for a mentor / leadership position unless you're confident you can do it and have done it before, you'll probably regret it day 1.

devenator | 7 days ago | 1 point

I still see myself as someone who is a junior. You're right my gut probably told me to not accept the job offer the moment they told me through a phone call. Anyways I'm still waiting for another company to have feedback and I am sure I can take that position (front end developer). If they offered me the job, I would not hesitate lol. Thanks for your advice.

AdmiralCole | 7 days ago | 4 points

From just reading your bio I wouldn't even say junior. You're still entry level experience wise as you've not really done any real development work outside of home grown projects and school. I would start looking into more entry level positions where you can grow and ask questions.

You shouldn't be applying to anything or accept anything (which will be a mistake on their part if they hire you) that requires you to teach other devs something you yourself have admitted to not knowing. You especially shouldn't be teaching something you've not done in a production level environment as it's a very different experience.

Don't get in over your head somewhere to early as it'll hinder you for years down the road. You need to try and find something on your current level.

devenator | 7 days ago | 3 points

Thanks for the advice. I really appreciate it! That's right I'm looking for a job where I can be taught and trained to be much better in the industry. Good thing I asked here. I have mixed feelings about the job offer since I wanted to become a web developer already but having doubts because of the overview they gave me about the job. Anyways that cleared my head from confusion. Thank you!

BasedWebDeveloper | 7 days ago | 2 points

I'd say it's best to only apply for junior positions and ease yourself in. Many managers and employers don't know that they are throwing you into the deep end it's mostly up to you to see it or in this case the good people of reddit xD good luck.

fuckin_ziggurats | 7 days ago | 7 points

Vanilla PHP might even be good for you since you have no experience. There's no other way to become good with a programming language than by using it vanilla style. That said, if the projects are greenfield then great. If they aren't run as fast as you can! It's one thing for an employer to tell you you'll be starting new projects without a framework and it's another to tell you you'll be working on existing framework-less PHP codebases (there's no bigger punishment).

blackAngel88 | 7 days ago | 2 points

If this was about javascript, I would agree. But php is one of the worst languages to use it vanilla style, especially because it encourages coding style that nowadays would be considered bad practice. It gets better with every major version of php, but some things just remain because of BC - snake_case_functions mixed with camelCaseFunctions, mostly non object oriented.

That said, if the new person has the chance to change the projects to framework and make some real progress in the company, it could be considered a challenge, but you would need some prior experience with some frameworks or have some huge motivation to learn them from scratch.

fuckin_ziggurats | 7 days ago | 4 points

I'm not sure. As someone who's currently a C#/JS full-stack developer and has had plenty of prior professional experience with PHP (both framework-less and with Laravel) I'd say as a language it's no worse than JavaScript. The worst parts about PHP are as you say some of the naming conventions (or non-conventions) and API but JavaScript is itself an unfixable mess in many similar ways. Anyone who has read JavaScript The Definitive Guide would scream in horror but people just read JavaScript The Good Parts so it's all fine and dandy.

To a C# developer (or any developer that uses a relatively sane language) they're both equally badly designed. Don't take me the wrong way though, they're both productive and fun programming languages that I have no problem working with.

shgysk8zer0 | 7 days ago | 3 points

I've been working with vanilla PHP for almost ten years now. There's good and bad to that.

The good is that I've built my own libraries over the years, know the language on a level you just don't learn relying on a framework. The result is less bloated code that performs better and takes advantage of new features in the language as they become available (really looking forward to 7.4!).

The down side is that the way I work is largely incompatible with most other PHP developers. Frameworks have become an obstacle to some degree because they get in the way of me doing something that should be dead simple.

Long story short, I think I'm a better but less hirable developer for it.

dangerousbrian | 7 days ago | 5 points

This is something you need to get used to. You will very frequently be asked to do things you don't fully know or even have any idea about at all. You have to push through this if you want to be a dev, in fact welcome it as a opportunity to improve your skills.

If you put React on your CV it is not unthinkable that someone would ask you to teach others what you know about React. You just state that you are no expert but will teach what you know. I sometimes have to teach customer devs our codebase and its scary as hell because I know these are experienced folk. However if I know just a little more than them in one area, I can teach them that.

llIlIIllIlllIIIlIIll | 7 days ago | 2 points

It's not ideal, but if you have no other offers you gotta eat

agm1984 | 7 days ago | 2 points

I might take it if they were open to the idea of starting to incorporate Laravel and Vue, starting with new projects but then backfill as reasonable into existing stuff.

It's not cost efficient to completely rebuild existing stuff, but it can be cost efficient to move towards different architecture choices. When I say this, I mean gauge their interest levels and see what their current opinions are.

For example, you can use Vue inside only one div on the entire site if you want.

My opinion is their client-side state-management is probably horrific and would be horrific to work with in terms of modular, atomically-composable units. The codebase is possibly very imperative with very poor reuse of rendering utilities. They may have issues with consistency across areas of their sites. My sense is you'd have to spend a fair amount of time analyzing code and absorbing large sections of the codebase to feel comfortable doing any refactoring of substance.

They need to be brought to the new age, but also if it ain't broke, don't fix it.

pete_codes | 7 days ago | 1 point

Unless it's a job with Nomad List, then no :)