<story><title>I am a quite good bad programmer</title><text>I find somethings actually strange. Per se, checking my quality as a developer with job interview questions I will receive a not so high grade. I would say between 5 to 7 out of 10. Not brilliant. But as a developer I think I am actually really good.&lt;p&gt;I never &amp;quot;studied&amp;quot; computer science in a regular way, but I am in the industry more than 20 years. I started as a hacker, reverse engineering, assembly code, moved to C and C++ and now web development in Node.JS, Go (golang) and Rust and Vanilla JS. Touched of course Python and Arduino and Raspberry PI.&lt;p&gt;I find it that my code and overall look as much better (if I can be a bit non modest for a second) than other developers even seniors.&lt;p&gt;- My code is highly readable with good comments and other can take over my code responsibility quite easily&lt;p&gt;- My code runs (and also complies) faster than other - I understands the usage of Hash &amp;#x2F; Map instead of searching arrays and many other small things that actually enhance the code performance&lt;p&gt;- I know how to KISS (Keep it stupid and simple) and so I am able to write complicated software because the basic is simple and separated so my feasible to comprehend&lt;p&gt;- I understands Object Oriented correctly and knows where to use it and how and when to avoid it&lt;p&gt;- I know not to search always the latest new shiny thing (library or framework) and use legacy software that actually do the job when needed without complications&lt;p&gt;- I understand how the computer works, from BIOS, BUS to OS (Linux and Windows internals)&lt;p&gt;- I have (again if I may say) good product skills and some UX guts which helps me manage things on my own&lt;p&gt;All of this together allowed me to build and sell already two startups. Develop and maintain easily many web sites and SaaS which creates me nice passive income (such as https:&amp;#x2F;&amp;#x2F;gematrix.org).&lt;p&gt;So am I a good or bad programmer? - Still I will score quite low in job interview questions ...</text></story><parent_chain><item><author>andy_ppp</author><text>For a recent interview I was asked to build an IOC dependency injection library in 2h and the task was made “deliberately” unclear according to the interviewer. So I spent 2 days researching IOC libraries, building some nice examples of how it should work to get a feel for the API, writing tests up front, writing the library and adding docs. Then I got an interview! Fantastic I thought, I passed the technical with my 100% tested IOC container that had a nice interface for injecting dependencies and even options for injecting singletons or new class instances with configurations passed into the constructor.&lt;p&gt;Now I went through with them some extra things in the interview and fixed some things about the code and handled some things a bit better. After this investment of time I was told I didn’t handle errors well enough in this 100% coverage tested example code of a library. This in my opinion was not true or even discussed in the interview, error handling was certainly not specifically mentioned in the assignment.&lt;p&gt;Anyway to address your point, I don’t think you should necessarily believe what other people say about you in job interviews; there are various types of interviewer but mostly the feedback is post rationalisation of “that’s not how I would have done it” even if your solution solves the problem perfectly. For this reason I’ve decided unless I can’t afford to feed myself I will avoid doing at home coding exercises that are deliberately vague in the future.&lt;p&gt;If you want to get better at in person&amp;#x2F;under pressure coding exercises I highly recommend taking on Advent of Code [1] one year, these are the opposite of the vague problem specified above as there is an exact and clear right answer to collect each star.&lt;p&gt;[1] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;adventofcode.com&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;adventofcode.com&amp;#x2F;&lt;/a&gt;</text></item></parent_chain><comment><author>AtlasBarfed</author><text>&amp;quot;Build a custom IoC for an interview&amp;quot;&lt;p&gt;Are you kidding me? The IoC research was probably good experience if you&amp;#x27;ve never seen them before, but yeah you ran into the &amp;quot;easier to criticize than do&amp;quot;.&lt;p&gt;I almost guarantee none of the people involved went through the same interview process where they had to code something for two days. This is how the hazing cycle begins, because everyone thinks &amp;quot;man I had it hard, and my hard experiences forged me, so I&amp;#x27;ll be really hard on the next round of people&amp;quot;.&lt;p&gt;Dumb idea. That is a conscious thought bubbling up from subconscious &amp;quot;trauma&amp;quot; and humans for whatever reason replay &amp;#x2F; reinflict their repressed emotional damage on others. I believe this is because trauma makes you feel alone, and it makes a person feel less alone.&lt;p&gt;But anyway, so the organization hazes people, who then haze the next round even worse, who then haze the next round even more really bad worse.&lt;p&gt;This basically is what IT interviewing is after 20 years of collective downward spiral hazing.&lt;p&gt;The military generally has this figured out with basic training. Basic training is basically hazing to toughen up and desensitive normal humans into becoming soldiers. But the military seems to have a policy &amp;#x2F; training feedback loop that prevents the hazing from getting worse, and staying at the level of psychological impact that they get the desired result from.&lt;p&gt;Interview gauntlets have a desired result: filter out the chaff, get good candidates. As google itself shows, one of the progenitors (along with MIcrosoft) of the great interview hazing feedback loop, that it doesn&amp;#x27;t work. The end goal of &amp;quot;good employee&amp;#x2F;developer&amp;quot; isn&amp;#x27;t enhanced by the gauntlet&amp;#x2F;hazing. And yet everyone does worse and worse variants (look at Amazon: people hate working there, and the reputation of a horrible workplace IN IT, not just on the warehouse floor, is now ubiquitous in the industry).&lt;p&gt;Anyway, fuck our industry interviewing hazing. What a stupid bunch of apes we all are, interviewing in ostensibly a purely mathematical&amp;#x2F;technical domain has been reduced to a bunch of Lord of the Flies level dystopian human psychology.</text></comment>
<story><title>I am a quite good bad programmer</title><text>I find somethings actually strange. Per se, checking my quality as a developer with job interview questions I will receive a not so high grade. I would say between 5 to 7 out of 10. Not brilliant. But as a developer I think I am actually really good.&lt;p&gt;I never &amp;quot;studied&amp;quot; computer science in a regular way, but I am in the industry more than 20 years. I started as a hacker, reverse engineering, assembly code, moved to C and C++ and now web development in Node.JS, Go (golang) and Rust and Vanilla JS. Touched of course Python and Arduino and Raspberry PI.&lt;p&gt;I find it that my code and overall look as much better (if I can be a bit non modest for a second) than other developers even seniors.&lt;p&gt;- My code is highly readable with good comments and other can take over my code responsibility quite easily&lt;p&gt;- My code runs (and also complies) faster than other - I understands the usage of Hash &amp;#x2F; Map instead of searching arrays and many other small things that actually enhance the code performance&lt;p&gt;- I know how to KISS (Keep it stupid and simple) and so I am able to write complicated software because the basic is simple and separated so my feasible to comprehend&lt;p&gt;- I understands Object Oriented correctly and knows where to use it and how and when to avoid it&lt;p&gt;- I know not to search always the latest new shiny thing (library or framework) and use legacy software that actually do the job when needed without complications&lt;p&gt;- I understand how the computer works, from BIOS, BUS to OS (Linux and Windows internals)&lt;p&gt;- I have (again if I may say) good product skills and some UX guts which helps me manage things on my own&lt;p&gt;All of this together allowed me to build and sell already two startups. Develop and maintain easily many web sites and SaaS which creates me nice passive income (such as https:&amp;#x2F;&amp;#x2F;gematrix.org).&lt;p&gt;So am I a good or bad programmer? - Still I will score quite low in job interview questions ...</text></story><parent_chain><item><author>andy_ppp</author><text>For a recent interview I was asked to build an IOC dependency injection library in 2h and the task was made “deliberately” unclear according to the interviewer. So I spent 2 days researching IOC libraries, building some nice examples of how it should work to get a feel for the API, writing tests up front, writing the library and adding docs. Then I got an interview! Fantastic I thought, I passed the technical with my 100% tested IOC container that had a nice interface for injecting dependencies and even options for injecting singletons or new class instances with configurations passed into the constructor.&lt;p&gt;Now I went through with them some extra things in the interview and fixed some things about the code and handled some things a bit better. After this investment of time I was told I didn’t handle errors well enough in this 100% coverage tested example code of a library. This in my opinion was not true or even discussed in the interview, error handling was certainly not specifically mentioned in the assignment.&lt;p&gt;Anyway to address your point, I don’t think you should necessarily believe what other people say about you in job interviews; there are various types of interviewer but mostly the feedback is post rationalisation of “that’s not how I would have done it” even if your solution solves the problem perfectly. For this reason I’ve decided unless I can’t afford to feed myself I will avoid doing at home coding exercises that are deliberately vague in the future.&lt;p&gt;If you want to get better at in person&amp;#x2F;under pressure coding exercises I highly recommend taking on Advent of Code [1] one year, these are the opposite of the vague problem specified above as there is an exact and clear right answer to collect each star.&lt;p&gt;[1] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;adventofcode.com&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;adventofcode.com&amp;#x2F;&lt;/a&gt;</text></item></parent_chain><comment><author>code_runner</author><text>I start a new gig Monday… my best interviews were with two big tech companies… one hired me and the other said I lacked “code fluency”, which I had never heard of in those words.&lt;p&gt;Some of these places expect your first draft of a weird abstract problem to be perfectly readable in a live coding environment. Without any pressure my first draft is feeling out the problem and then trimming everything up.&lt;p&gt;In any case I landed at my preferred company, which is very exciting.</text></comment>