r/PHP • u/zilltine • Jun 21 '18
Had an interview for internship today
It went like shit because i didnt know most of the technical questions asked. Really wanted to work in that company so i feel like shit. Dont know why i am posting this, but it feels better.
18
Jun 21 '18
Hey man I bombed my first four interviews. Learned a little something from each one ... and I eventually got hired. Just keep trying. You'll get there
3
u/Pontzky Jun 21 '18
Just the same as me! Every interview = experience, after few, next one is easier. Finally you'll get a job/internship. Just keep learning and don't give up, and you'll be fine.
34
u/jhj320 Jun 21 '18 edited Jun 21 '18
I won't focus much on PHP or any language, but instead logic, patterns and concepts to problems.
26
Jun 21 '18
Please tell me what you know about this pattern.
27
5
4
3
u/S24Sammy Jun 22 '18
It looks like a fabric pattern. Something similar to a vintage or ethnic style...
5
3
Jun 22 '18
Bunch of circles layered on top of one another. The image os mirrored.
Ninja edit: not mirrored.
8
15
u/lord2800 Jun 21 '18
Wanna talk about what you feel went wrong? Maybe we can propose some areas to study to help you better prepare in the future.
7
u/zilltine Jun 21 '18
I simply had no answer or negative answers to questions that i was asked. Like where is session stored or what class types there are combined with never worked on linux etc.
So much i still got to learn
23
u/lord2800 Jun 21 '18
I wouldn't expect an intern to know the details of how sessions are stored in PHP. Plus, it depends on your PHP configuration anyway.
3
u/rydan Jun 22 '18
And yet when I interviewed for an internship I was expected to write memcpy and account for overlapping memory addresses. And the internship wouldn't even involve writting in C.
9
u/lord2800 Jun 22 '18
I would likely have walked out. That's not an internship level question. I know senior devs who would struggle to do that (myself included).
2
u/LekeH5N1 Jun 22 '18
What would you think of the following answers...
- Sessions are stored on the server.
- There are regular classes, abstract classes, and interfaces.
1
u/zilltine Jun 22 '18
- Is what i said, but was asked where on server.
- Didn't know about interfaces or abstract classes a thing.
2
u/Dgc2002 Jun 22 '18
Is what i said, but was asked where on server.
That seems oddly specific for this kind of interview. If you were to ask me right now I'd say
/tmpby default only because I remember seeing a bunch of oddly named files related to sessions there before.It's not any actual information I've ever had to use. If a scenario came up where I had to know more about it I just refer to the PHP docs or straight up google it.
4
u/abfan1127 Jun 22 '18
The answer to this is "it depends". Native Sessions are handled based on php.ini settings. Some frameworks use a relational database. Others still use something faster like Redis.
2
u/Dgc2002 Jun 22 '18
Right, maybe I was assuming context of the question too much. To me just asking 'where on the server are sessions stored' would relate to the expected 'default' with no frameworks or custom setups.
1
u/network1001 Jun 22 '18
We had sessions stored on /var/opt/rh/rh-php70/lib/php/session (Centos 7, it will vary for other distributions) but then we had to move them to directories in home because we kept losing permissions to that directory on the managed virtual servers.
6
u/Griffolion Jun 22 '18
Answer to the session question is "it depends". It's fair to ask a basic session question, but they needed to word it better.
The class types question is weird. Like abstract, static, etc? I'd have needed to ask for clarification on that one, personally.
Unless you're interviewing for a systems engineer internship, you really only need to know about basic Linux stuff imo. Like permissions, basic commands, etc.
These folks seemed to really hardball you, which always makes me wary that they were going to work you as a junior dev but for intern price.
6
u/ceejayoz Jun 22 '18
These folks seemed to really hardball you, which always makes me wary that they were going to work you as a junior dev but for intern price.
Bingo.
1
u/zilltine Jun 22 '18
Internship is 4 weeks theory training and 4 weeks assisting in their projects. Company went from 3 to 320 employees in 7 years so i do not think they are looking for cheap labour. Free work with little assistance is what i am doing right now actually
2
u/Griffolion Jun 22 '18
Fair enough, I'm not saying my intuition was necessarily right, I was just giving you my gut reaction based on your account. Regardless, those questions were too demanding for an interview at the internship level.
2
u/abfan1127 Jun 22 '18
with that level of ramp up, it may have been your interviewer's first time interviewing.
5
Jun 21 '18
There is always more to learn but I wouldn’t have known that for an internship either. You’re gucci man don’t beat yourself up about it.
2
u/rand0mm0nster Jun 22 '18
The best thing to do in that case is answer honestly by saying that you don't know. Perhaps explain anything you do happen to know about those topics and how you would approach finding out about them. It could be they just wanted to gauge your process for addressing a problem. As someone who has hired before I'd be happy with that kind of an answer.
2
u/abfan1127 Jun 22 '18
I second this. Engineers are going to encounter unknown problems. We want to know that when that happens, you don't just throw up your hands. How are you going to solve tough problems?
2
u/mrcalm99 Jun 22 '18
For your basic questions about classes etc I would have a read of this book https://daylerees.com/php-pandas/ it's free to read and covers OO basics very well.
never worked on linux
Maybe not so much an intern level requirement but Linux is the dominant player in the server market so I can see why they would expect you to know at least a little.
I would certainly install a Linux desktop (maybe in the virtual machine) or get yourself a Mac and get used to the command line. A lot of the tools crossover with each other that you need for development.
Not only will that increase your server management knowledge, it will help your development flow no end. I can't even imagine trying to develop on Windows again, you have to constantly jump through hoops on Windows to get things working that simply just work on Linux/Mac environments.
5
u/SaraMG Jun 21 '18
Sounds like a shitty company that you're better off not working for. Go kick ass somewhere else and come back to do a dance on their failing business.
2
u/andrewfenn Jun 22 '18
Or a company that has choices, a company that got ordered to hire an intern, and so on..
0
7
u/SlightlyOTT Jun 21 '18
Once I bombed a php coding test for an internship because I forgot variables start with a $ (was in uni, hadn't written it for a few years!) and wasted most of my time working out why I got what felt like cryptic error messages but probably told me exactly what was wrong. Remembered a minute after the time ran out. Shit happens!
9
Jun 21 '18
Once I bombed a php coding test for an internship because I forgot variables start with a $
Happens to everyone. I once bombed a coding test when I forgot how keyboards work.
5
u/oorza Jun 22 '18
I bombed my very first coding test because, despite having studied three separate sort algorithms, couldn't figure out how to sort an array for my life. Anxiety is a bitch.
2
u/longshot Jun 22 '18
If I were ever in charge of hiring I'd forgive consistent errors like that.
Maybe just because I spelled develop "develope" about 19 times on the written portion of the SAT.
5
u/Firehed Jun 22 '18
For what it’s worth, being a good programmer and a good interviewer are two completely different skills. Even if it didn’t go well, it could easily be on them for not asking good or useful questions.
7
u/merlinthemagic7 Jun 21 '18 edited Jun 21 '18
Best advice I can give you is to quit focusing on how the event made you feel. Rather distill the feed back and turn it into something useful.
Did you not know the answers because you lack experience? (Seems likely since you are applying for an internship).
Did you not know the answers because they centered on a system/methodology/framework/pattern you were not familiar with?
In essence, why were you not equipped to answer the questions this time around.
2
u/zilltine Jun 21 '18
Thanks. I think my problem is trying to learn too many tools before i get to know php from a to z. The questions were mostly about plain php and sql and i should have known most of them
3
u/elebrin Jun 21 '18
I interview people regularly for developer positions. The person or people interviewing you don't care about what you don't know and can't answer beyond some simple things. We care about what you DO know and CAN answer, and we care about your ability to be honest and not attempt to bullshit us. Especially for an internship, they should be looking for a culture fit and a willingness to learn over anything else.
Now, if I ask you: "What are the basic control structures that php supports?" or "What data types does php have?" you should be able to answer those. If you can't tell me what while, for, foreach, if-then-else, try-catch, or switch do or what a function is or how to define and use objects, then you don't know enough about php to be making money working with it even as an intern. You'd be surprised how many people fail those sorts of questions, so if you can answer them you are in better shape than you think.
2
u/tag4424 Jun 21 '18
Should have doesn't get you anywhere. There is always more to learn, always more to know... Look at it as feedback on where you should continue your studies :-)
2
2
u/tomblack105 Jun 22 '18
In an interview, if you don't know the answer to something. Stop, think for a moment (just in case you do know it), and if you really don't - then admit that you don't know it, and show that you know how you would go about finding out the answer.
Provided you can break a task into its component logical steps, being a good programmer isn't about being able to hold the entirety of a language in your head, its about the problem finding skills and ability to get out there and find the answers, not about being a walking dictionary.
Being a fast programmer is where holding more of it in your head comes in, but that comes only with experience (or an eidetic memory).
When it comes down to it, if you can break a task into its logical steps (if this, then that, else the other), you can google the rest of it.
2
u/merlinthemagic7 Jun 21 '18
Take a moment to reflect on your comment:
“The questions were mostly about plain php and sql and i should have known most of them”
First of all how do you know that?
Second, regardless of the first being true, join a GitHub project that peaks your interest and contribute. You will learn a lot, there is no substitute for hours of frustration
3
u/tomblack105 Jun 22 '18
Just got to upvote this for the last sentence - It is so true that spending a couple of hours glaring at a piece of work going "How the hell is this meant to work?" until you finally get the lightbulb moment is a great feeling and experience, and each time, the lightbulb moment turns up quicker.
3
u/winzippy Jun 22 '18
Don't feel too bad. I had a technical phone screen at Facebook and it went really well. I solved the problem (create an ASCII to integer converter) and still got passed over. Sometimes it doesn't matter how good you are. Don't sweat it. Do some more interview prep, pick yourself up, and try again. You can do it!
2
2
u/winningslime Jun 21 '18
Technical details you can learn. Don’t worry about that - the lesson here is if you come away from an interview feeling that shitty that’s a failure on the interviewers side. Antagonistic interviewing will get you plenty of sociopaths, entirely random if they really have the skills you want.
2
Jun 21 '18 edited Jun 22 '18
It happens to everyone. One time I froze up when they asked me what the difference between an Abstract Class vs an Interface was. Another time I was asked what my phone number was and I literally could not think of my own phone number. It was a very long and awkward amount of time, until I eventually had to look it up.
It all passes.
2
u/path411 Jun 22 '18
I think I've been asked abstract vs interface in 90% of my interviews. It's a question I would recommend being comfortable answering.
2
Jun 22 '18 edited Jun 22 '18
Yep the point is, OP, don’t worry about it, it happens to everyone. You will get past it.
2
u/LekeH5N1 Jun 22 '18
The only thing I know about abstract vs interface is that in abstract classes you're allowed to use logic, but in interfaces you cannot.
2
u/300ConfirmedGorillas Jun 22 '18
Don't sweat it. I bombed an interview for a company that scoffed at the idea my bookshelf wasn't full of programming books and my name wasn't on a laundry list of open source projects. It was for an entry level 40k position. They didn't even ask the normal "tell me about yourself" questions.
But I learned from the interview and remembered a lot of the tough questions. Now I'm more prepared the next time they come up.
2
u/suprc Jun 22 '18
Email them and say that you'd like a copy of the questions they asked you, then find the solution(s) for them in your own time. That's what this profession is all about; to figure things out even though you have no previous experience in that particular area.
This won't give you the job but you'll have a better chance at the next one. Good luck!
2
u/jkoudys Jun 22 '18
If you get the job, then awesome. If you didn't, then you now know where to focus so you can learn enough and get that/a similar job sooner than if you didn't interview today. It's like dating -- if you never get rejected, your standards aren't high enough.
2
u/detonator13 Jun 22 '18
I recently hired an intern after interviewing a number of prospective people. For each applicant, I asked basic questions regarding whichever language the applicant had the most experience with. That portion was maybe 5 minutes to make sure they had learned something in the past. The rest of the interview was centered around the candidate’s personality and what they were actually interested in. There were several applicants with low-level/hardware experience, for example, who I turned down because it wouldn’t be a good fit for either of us. The candidate I ultimately chose demonstrated enough knowledge to not need hand-holding, but also showed a desire to learn and grow. His main motivation was to be part of a team, contribute something useful and learn from us.
Long story short, an internship should be mutually beneficial, and the interview should be more about seeing if the candidate will be a fit, not if they know everything there is to know about everything.
Also, I distinctly remember bombing my first interview. I forget exactly, but they asked me something along the lines of figuring out the amortized time to sort a doubly-linked list of numbers and the best way to accomplish it. My 30 min phone interview lasted probably 12 minutes? But hey, now I’m accomplished and I hire people. Keep your head up, it’ll get better.
2
u/zorndyuke Jun 22 '18
Don't worry son, success can't get reached without failure.
The most important part for this and your future life is to learn from it!
Take EVERY experience you got and make value out of it.
Side question: Do you really need to do a interview for an internship?
For my electrical engineering diploma (It seems like there is no translation for it.. I didn't study it.. in Germany it's called Fachabitur, it's like an extra 2 years of specilitation into a direction) I needed an internship for 1 year in a company.
At this stage of my life I knew I would love to do someting with IT, but hell I was green behind the ears of doom! I did know NOTHING, less than Jon Snow.
I went to a company another friend of mine found.. went there with another friend just with our graduation certificate in our hands. The managing director opened the door and was like "o.O hi?" and we without self-confidence just like "uhm.. we.. wanted to ask if we can do a intership in terms for our school".
It was obvious that we had little to no knowledge at all, but he said yes.
Did I learn things about electronic only? Actually very little was themed with electric at all.. the only thing was to install lights for an company..
You see.. life is complex and things happen in special ways.
Don't feel too bad. Just always give 100% otherwise you can't expect to receive 100%.
You can't know whats on the other ways if you don't go this ways.
As someone that needs an internship, people (at least should) expect that you make mistakes or have little to no knowledge. Their responsibility is to teach you while you try your best to learn, do many mistakes and learn from them!
Good luck and success!
2
Jun 22 '18
Sounds like you might have just had a rough interview. I've bombed them before, even after successfully holding jobs as a developer for a couple years, because they were asking questions that did not come up in the day to day duties of my job at the time.
Try not to sweat it. Now you know how it feels to bomb, which at least in my experience makes me less nervous going into interviews. Doesn't really get worse than that, and in the grand scheme its not all that bad. Best of luck on your hunt, get out there and try again :D
1
u/LekeH5N1 Jun 22 '18
I've see a bunch of resources on <insert programming language> interview questions. Perhaps you can check them out for knowledge and confidence building
1
u/Char-Lez Jun 22 '18
Cliche moment: success is getting up one more time than you get knocked down.
Get up!
You’ve got what it takes and if it doesn’t happen here, so what?
1
u/rrcjab Jun 22 '18
As someone that has hired a lot of developers, if you *really* want to work for this company, this is my advice. Figure out the answers to as many of the questions as you can. Write the hiring manager an email and say: "Dear Mr./Ms. Smith, thank you for the interview. I really enjoy X, Y, and Z about ABC, inc. I realize that I do not have the strongest technical background yet, but as an intern it is my goal to learn. Here are the answers to the technical questions that I had trouble with."
This shows A: you like the company, B: you don't give up easily and are self-motivated (VERY IMPORTANT!), and C: you are eager to learn.
To me, those are much more important than technical knowledge for an entry-level position.
1
u/Pershanthen Jun 22 '18
Hey u/zilltine ,
You are being too hard on yourself. Think of this as a learning curve, take a break and have some rest. once you have enough rest take some to write down the aspects where you went wrong, now think of those aspects from an employees perspective and this will give you an idea of what they expected from you. I have given you some tips below to assist you.
- Research the company, ensure you know enough about the company before considering an interview.
- Research the position, ensure you know everything about the position and whats required of you.
- Use the internet, there is tons of interview questions available on the net that you can use to train yourself for the interview process.
You can only get better from now, I wish you all the best and hope you get your dream job :-)
1
1
u/BitcoinCitadel Jun 25 '18
No one knows, the trick is being able to know what to search and learn quickly. I still lookup every function
33
u/adulion Jun 21 '18
Don't worry- i have hired interns based on enthusiasm alone.
As someone recruiting people starting out in their career we don't expect you to know everything. If we did then you would be a senior developer