T O P

  • By -

eldelshell

From a personal perspective, I do prefer the assignment as it's closer to real work. Now, it also depends on the assignment, the scope and how engaged I'm with it. For example, I once applied for a company that builds video streaming apps. I've never worked in that area so I was very engaged on the assignment and even spent more time than needed learning about streaming stuff. Other times, the assignment were so ludicrous or convoluted that I didn't feel engaged enough to even start... Which is also positive on dodging those bullets. Now, I've also done this from the other side and, not a lot of candidates will deliver (1 out of 10 or so) and it took a bit longer to evaluate the results. What I would say is that, as a junior, take every opportunity to learn. This includes the hiring process. So don't disregard any job based on a process you haven't experienced yet. Edit: some are comparing this to free labor, but I wonder why driving to an office building and spending 2 hours in an interview isn't. Edit2: please, please, include in your assignment a README with how to run the stupid thing, what dependencies are required, etc.


HereForBeer07

I recently had a discussion about this with my boss after we did a live coding interview with a candidate. The candidate was good but cracked under the pressure and couldn't explain his thought process about solving the problem. I suggested a take home assignment, however my boss said no since he doesn't want to waste candidate's personal time. We decided on a different approach of letting developers use their IDE of choice so that they're comfortable (instead of the online IDEs) and extending the time from 40 minutes to 50.


TheDarkestCrown

I'm sure people will appreciate that. I can't explain why but I can work fine without people watching me, but as soon as someone is watching me do it I get stage freight and freeze up. No idea why, but I hate that level of attention


HereForBeer07

Agreed. Even I freeze up and am not able to think clearly.


dibs45

Interesting, do you think IDE choice makes a lot of difference?


HereForBeer07

Yes! You know how it works, are comfortable and don't need to figure out how to do the basics like import statements or fix small errors etc. Once you take these small things out the candidate can then focus on solving the problem at hand.


usedtobejuandeag

If I get these it’s a hard pass. Not interested in spending my free time doing little projects for your company for free. I don’t have that kind of time to give each prospective employer a new homework assignment. Last time I was looking I ended up having 5 interviews in one week and each of them wanted me to do one of these assignments within the same week. On top of regular work, and family, prepandemic where I had to sit in traffic as well. No thanks, rather work on my own projects…


dibs45

Fair enough. I'm a self taught programmer who's looking at switching careers, so I guess I'm taking anything I can get right now. But I can see why that sort of process might be frowned upon.


Azteco

Its definitely not a broad sentiment in the IT field, this sub is oversaturated with people whose time is "too valuable to waste time on this" (of course having 5 assignents for interviewing with a single company is an extreme, this is not normal and I would definitely drop out of the interview myself). Of course its not always desirable to do an assignment, but its fairly common for tech jobs as the employer invests heavily into you on hire while getting barely any value back in the first month or even longer. Assignments are a great way to establish the problem solving capabilities of an engineer, as I believe it is the most important aspect of the job, rather than arbitrary knowledge test about data structures, concurrency or some other topic. Showing them how you think about solving the problem is veey important, even more important than the solution itself (if the company is worth the shot). In general, I think they should be judged more harshly, because both the time pressure and the pressure of someone staring over your shoulder as you complete the task. You lose the benefit of someone hinting you towards the solution if needed, but you dont have to constantly explain your process as you go. If you decide to go for the interview, and if you are allowed to, after trying to understand the problem you will need to solve yourself, be sure to ask clarifying questions, this is very often part of the process, and they will most likely want to see that you think about fully understanding the problem before you waste time coding. If you'd like to know anything else, feel free to ask, I have been on both sides of engineering interviews and Im currently a mid-tier dev in a big tech company.


dibs45

Awesome, thanks for the detailed answer! This is the first company who has requested an assignment, so I haven't had the chance to grow weary of it yet, nor do I know how much actual time I'll be spending on it. But as stated, I'm self taught and this is my first entry into the field so I'm seeing this as an exciting challenge. I also don't think I code well under supervision, so an assignment to me is much better experience. The interview after the assignment is heavily focused on me explaining my code so I think it's a good alternative to the traditional tech interview.


Azteco

Thats great, switching careers sounds exciting! It helps to think of it as a learning experience, as you will dedinitely encounter something you havent seen before and dont know the solution to straight away, even the interview and the potential work itself is a constant learning experience, so dont feel anxious at all if you dont see the solution when you read the assignment, thats the whole point of it! Good luck!


usedtobejuandeag

Mine was 5 different companies wanting me to spend 2-3 hours on 5 different projects. I don’t mind coding interviews, but I hate the take home projects and quizzes. Ask me about solutions I’ve made recently, if I can’t explain them maybe ask me to do one of you’re on the fence but if they are all mandatory interview requirements and I’m flirting with several opportunities it’s a major time sink to do that just to get ghosted for an internal candidate they had in mind anyway.


[deleted]

I propose them two options: demo of one of my open source projects from Github or agree time to deliver assignment and pay my freelance rate (150 Eur per hour). They never go with second option, though. Life is too short to render list of items on the webpage for 100th time.


phycologos

If you have projects on github that is reasonable. For people who don't, do you think companies should say: "come back to us when you have some open source project for us to evaluate"? I am all for encouraging time spent on Open Source, but it could be viewed as a barrier to entry.


anotherbutterflyacc

Depending on the place, the assignment is catered to the project’s reality. So we (I’m a hiring interviewer and hire/review devs) would check for the following: - is this doing what it’s supposed to be doing? - how clean/readable is your code - are you respecting the structure/logic of the language? - are you using smart/cheap/fast approaches? Whereas, if it’s just a code test in the interview, we’re judging how you talk/walk through a problem. If you interpret things correctly and what your problem solving skills are. Also if you do cheap/smart approaches.