Bad advice for good questions
Tags: twitter, beginners, interview
Published: 2021-12-26 19:26:34

I just saw a great post shared on twitter. It's a new developer applying for an internship. She got through the first interview, and have now received a test assignment to be returned in 3 days.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lgb301ajk2lw1lgx4czb.png)

The question is an extremely natural one. How does one complete an ecommerce website in 3 days!? - I'll supply the answer, but first, i want to point out how twitter may NOT be helpful to a beginner. In fact, probably even harmful.

Some of the answers are as follows here:

**Sounds like someone scamming for free work**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qqu2zvxg5gyp04il1amg.png)

No. No it absolutely does not. And with what logic does that even make sense? Who would hire a junior with no experience for an unpaid internship, give the applicant three days to complete an ecommerce solution, and then make money of their work? It is a ridiculous thought. People who know about programming, web and code, knows that the this makes no sense. Noone will expect the finished product to be market ready. Even if code is added to a mockup in a working state by the applicant, the service of transforming design to html+css is VERY cheap and reliable from companies in India or the like. A company would not make money of applicants code tests.

**They just want to know how fast you can work so they can exploit you**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l6alah8o2w7g59k3etsj.png)

It is so sad if the poster of this comment has ever experienced this, but this is so far from likely that its not worth considering. There are many ways to measure speed or performance, but this would not yield a reliable and comparable result. If the test was given in the office on a computer supplied by the company, and the assignment was "how many pages can you style with html and css in 3 hours" with a clock ticking. - well, then maybe, but it's just a silly assumption in this case.

**Just copy something from the internet and submit that**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/noasxxd05v1y93f895lb.png)

This is probably the stupidest advice that can be given. I don't know in what mind that makes sense, but there is no upside to cheating. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4m2ghn23phutgn7frghr.png)

----------
These are just a select few of the replies to the askers question. There are many more versions of the three mentioned above. 

Let be just give an example of how this could work. This is how i have hired developers, and how i have myself have been hired. 

**Applications and interview**
First reading the applications. When i read applications, i understand they are difficult to write and that when applying for your first job, you dont even know what to expect. Therefore i may look for things like hobbies, formulations (indications of humor?, eloquence etc). 

The first interview may not be in person, but via skype, teams or even just a phone call. If there is shared interest, the code test may be sent out. 

**The code test**
Just as in the example here, i have been sending out a "create a webshop" assignment and given the applicant 3 days. Now, i of course include a readme file where i explicitly state that

1. you are not expected to finish a webshop in 3 days.
2. you are not supposed to spend more than a handful of hours on this. 
3. you may choose where to start, what parts to do, and what parts to exclude.

When applicant returns i will evaluate obscure things like

- Did applicant write tests, or focus on getting as far as possible?
- Are there comments in the code to explain decisions?
- Did the applicant use expressive names for variables and functions?

And so on. I do NOT have a checklist with right and wrong when evaluating the result of this test. What i am interested in is the decisions that the applicant made, and how the applicant works.

No one can (or should) complete the assignment, so what did the applicant choose to do? It's a question we as developers/engineers are asked every single day. How to split a large job into smaller chunks that can be worked on and completed independently and contribute to the larger job. 

The second thing i do, is to make questions for the interview that can be used as talking points. 


Companies are not using the same process for hiring, but the goal of the company tends to be the same. We want a good colleague. We want to hire someone we can work with, who want to work with us. Depending on the level or specific position, we don't even care if you know how to make a webshop! - we will get there and you will have colleagues to split the work with. What we really want is to hire a good teammate.

Also note. An unpaid internship may be unpaid, but it is still an investment made by the company in terms of time and resources. We sure want the relationship to be mutually beneficial. Else the value diminishes on both sides.

The "advice" that was given to this person on twitter was not only bad, but could be directly harmful. A bunch of people saying "this is a red flag, run away", is pretty much a complete stretch, a misunderstanding or examples of people who either doesn't know what they are talking about or who has experiences themselves that they should really be careful pushing upon others. The internship might be a great opportunity to learn and get a career started, but not getting started because of false assumptions from a bunch of people on twitter would be really stupid.