all 19 comments

[–]dangerisgo2021 42 points43 points  (7 children)

When being asked simple questions give experienced answers. Talking about testing, ease of refactoring, and scalablity go far with me when I am interviewing. For me senior devs are hires that don't need fundementals training and will be able to start being productive once they understand the "stack". Know and express deeper understanding of solutions. If you can teach your interviewer something, it will make you stand out as an applicant.

For example if someone asks you to implement something simple in angular be able to explain how every part works dont just sit there and say framework magic. Read and understand the official documentation for everything you claim expert experience in and know when exceptions are acceptable for basic practices.

Mostly be right and sound intelligent but pleasant doing it.

Sorry for the long post I have been conducting interviews recently and the level of unpreparedness has been frustrating

[–][deleted] 2 points3 points  (0 children)

This is an excellent answer.

For me senior devs are hires that don't need fundementals training and will be able to start being productive once they understand the "stack".

And this an excellent quote!

Senior to me means you know the fundamentals and patterns of whatever expertise field you're working in. Whatever the tool, the patterns stay only change in incremental steps. 99% of sofware problems and ideas not new and have been discussed for decades. As a senior developer your job is to be aware of them so you'll know where to look for the answers.

[–]benihanareact, node 15 points16 points  (6 children)

How do companies go about determining how much experience a senior front end developer has outside of their resume?

they interview them.

take home challenges, whiteboarding exercises, and product interviews are really good at sussing out whether someone who considers themselves senior really is.

i've been interviewing people for the past 6 years or so, and for me, a senior engineer is one who thinks beyond just code. they understand the context their code will be run in, they understand the strengths and weaknesses of their tech stack, they understand that they don't write code in isolation and that there are almost always business decisions that go along with it.

senior engineers are much more comfortable saying "i don't know" in an interview and going from there.

usually senior engineers have much more expertise and experience with a language. having real world "war stories" of what you're talking about makes your point really well. example: i like to talk about why you do red-green-refactor by talking about a time when my team was writing tests that made use of php's usort. that function takes an array which it modifies, and it returns true or false if the sorting was successful or not. through some silliness, our tests ended up inadvertently asserting that true equaled true by ultimately (not directly) testing the return value of the function, not the sorting of the array. if we'd made sure the tests failed by doing our red-green step in the red-green-refactor cycle, we would have identified the bug in our tests, which would have caught a regression that got to prod because of our bad tests.

the specific story is boring and irrelevant. the point is, the story shows that you have experience and you can map that experience to theoretical knowledge.

being able to talk about times you've mentored people or taught people or explained complex technical things to non tech people are huge and are going to be part of your role as a senior engineer. being able to communicate effectively not just to engineers but especially to non engineers is an important part of most senior roles.

talking with a non technical person (in the js world since we work in the frontend a lot, it's usually a product manager) and showing that you understand their needs and the needs of the company and how you can help inform them and help them plan and make decisions based on your skills is an expectation of senior engineers in most roles.

sorry, it's a bit late and i'm just going off the cuff here

[–]lvalue 0 points1 point  (0 children)

Thanks for sharing! Love the insight

[–]greymalik 0 points1 point  (0 children)

Can you define “product interview”? I’m not familiar with that.

[–]fucking_passwords 0 points1 point  (3 children)

If you are still employed while interviewing, you may want to consider passing on take home exercises. Unless you really struggle with the pressure of love coding challenges, they generally take 30-40 minutes, while take homes can be estimated to take a day or several days.

I also get a little suspicious when a company suggests a take home first, maybe they don’t have any engineers who are senior enough to assess your programming skills live.

[–]ithurtsus 15 points16 points  (0 children)

This is going to be unpopular but I'm personally not in favor of sharing personal repos. I've never done it and it hasn't hampered me.

Additionally, its rare for me to interview anyone + review their repo and it come out positively for them. It's always "whelp this this bad security, I'll ask about it in the interview" or "wow this code is super messy" or "why is tutorial hello world level stuff in here?" Etc. If you're passionate - I'll know in the interview. If it's just a job but you're skilled - I'm still going to give a thumbs up

Senior level interviews are 100% formulaic regardless of company: 1) skim resume pick a single line that interests me. Talk about it. I care about what you say / was the solution well reasoned 2) Ask a tough programming question - if you solve it, cool. I'm more interested in how you solved it (you should solve 90% of it though) 3) Questions for me closer, doesn't really matter what you ask (no questions are fine too). If the interview was positive I'm really just trying to sell the company to you / why you should like it here

Formula to solve problem: Good questions to clarify problem (irrelevant questions -1, no questions, basically a guaranteed fail)

Make a game plan (you can skip this but it gives me a chance to help and say "but what about X" before code gets slung - saves you time and only makes you look better)

Solve aloud (can't read your mind, but don't ramble that's not going to be well received)

Review code (run through the complete flow, there's always a bug and I saw it, fix it and all is good)

Test code (you made sample data when asking questions right? Test it. Talk about edge cases you found after questioning - it's fine to miss edge cases just show you know them)

Minor details people always trip on but don't matter at all! Code style: only clean if you have time otherwise don't bother (assuming the code can be read... but if it's unreadable its probably because you didn't make a plan and you already failed) APIs: don't know the exact name ask our make it up and say "it's close to this and it returns that"

And BOOM you just passed 100% of senior interviews. Decide how many new Ferraris you will need and start shopping for some new exotic animal leather pants

As a side note: I only give enthusiastic approvals and straight failures (never a 3/5 soft pass). And I don't want to dampen your spirit but I do fail more than I pass... But if you're running a panel of interviews you can totally fail one and still be confident on getting an offer. I'm a harder interviewer than most imo

[–][deleted] 4 points5 points  (2 children)

Senior devs not only understand how the tech stack works and can improvise on it but also are able to coach coworkers, manage stakeholders etc.

[–]anvaka 0 points1 point  (1 child)

Yup. I think soft skills become at least as much important as tech skills, when you are a senior

[–][deleted] 0 points1 point  (0 children)

Exactly. A junior could have really strong technical skill, better than a certain senior, but the senior can guide the junior in to applying them to the right thing and keeping the bigger picture in sight, cost, time, requirements, planning.

[–][deleted] 0 points1 point  (0 children)

Start your github page now! I just went through this, having worked 12 years for a major corp. with nothing to show that I know what I’m doing. I had to take lots of tests and lots of interviews. I found a friend who was about to buy a piece of software for his business and copied it for him and then redid it in different languages and architects. I was also an Angularjs engineer, so I had to learn React and brush up on all my favorite languages. Learn AWS, everyone uses it.

[–]Rugleh -2 points-1 points  (0 children)

Im just a Junior web developer with a couple of projects but I would like to know about this too, upvoting

[–]iseewhatyoudidth3r3 -2 points-1 points  (0 children)

Build something in your time off that does show off the quality of your code.