Live data from Hacker News

The Insecure Developer

dev.to

11–20 of 59 posts

Re: The Insecure Developer

#11
I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look.

Having said that, our industry is full of a lot of people who probably are not well suited for the job. Quite a few people look at the 6 figure salaries that you can get in some places in the US and figure it's a cushy way to get rich. Similarly, there are tons of jobs. Everybody is looking.

But here's the catch. "Everybody" is not looking for the average programmer. They are looking for the top 1% of applicants. Anybody who is hiring (i.e. everybody) can verify this. How man CVs do you get a month? How many do you interview? How many do you hire? And even then more than half the time I reckon companies are dissatisfied with the programmers they hire.

So there is actually a huge supply of average programmers that nobody wants. The average programmers aim at the "barely works" bar, and having hurdled it think they are senior programmers. A year or two under their belts, they demand their incredible wages.

At the same time, we all ask ourselves, "How can we protect ourselves from the hordes of untalented hacks knocking at our door?" Whiteboards, puzzles, trick-du-jour. It doesn't matter, because the real problem is what I stated at the top.

Confidence is important because writing good code is very, very difficult. Writing terrible code that barely works is not so difficult. We think we need to protect ourselves, but we don't need binary barriers to protect us from the untalented hacks. We need a better attitude. We need to realise that programming is a skill that takes time and effort to develop.

Some people should not be in this industry -- not because they don't have the chops; but because they don't actually want to put in the time and effort to develop their skills. And it is an overwhelming task. There is so much to learn that you will be drowning in it for years (another reason people put their fingers in the ears and think they are amazing).

So to any "young" programmers (of any age), my advice to you: Have courage. Have confidence. Love what you do because it's a crappy, horrible job if you don't -- no matter how much you get paid. And for those who don't love it... there are lots of jobs that are not programming, but are still in the industry. Quite a lot of them even pay more than programming! Seek them out.

Re: The Insecure Developer

#12
post #7
post #4

Isn't the point of an internship to continue your formation ? How comes companies making the same tests as for recruiting for real jobs ? "Hi, we are not going to pay you, or not very much, but please be at the same level as senior that are already working for us" I had interns back in the day I had an office (and not working from home) and I always made them work on basic tasks under my supervision. Once I had one w…

We give coding challenges to our intern applicants, and most fail. We give different challenges and expect different levels of competency for a senior role. Code challenges at least have the capability of being very useful. We try and present the type of problems people will have to be solving in that position; if they struggle with it and someone else excels, they have done their job.

>We give coding challenges to our intern applicants, and most fail.

Cool, we can finally remove CompSci degrees from job postings.

Re: The Insecure Developer

#13
post #10
post #4

Isn't the point of an internship to continue your formation ? How comes companies making the same tests as for recruiting for real jobs ? "Hi, we are not going to pay you, or not very much, but please be at the same level as senior that are already working for us" I had interns back in the day I had an office (and not working from home) and I always made them work on basic tasks under my supervision. Once I had one w…

>How comes companies making the same tests as for recruiting for real jobs ? 1) Because desirable internships have more candidate applications than available slots. E.g. Google has 40,000 students wanting an internship but only 1500 slots.[1] With that supply & demand ratio, Google can be selective via difficult coding tests. 2) Even though internships are unpaid, companies evaluate interns to potentially offer perma…

Re 2. Internships are paid. Pretty well actually.

Re: The Insecure Developer

#14
post #7

Earlier quoted context omitted.

We give coding challenges to our intern applicants, and most fail. We give different challenges and expect different levels of competency for a senior role. Code challenges at least have the capability of being very useful. We try and present the type of problems people will have to be solving in that position; if they struggle with it and someone else excels, they have done their job.

>We give coding challenges to our intern applicants, and most fail. Cool, we can finally remove CompSci degrees from job postings.

CS is not about programming.

Re: The Insecure Developer

#15
post #14

Earlier quoted context omitted.

>We give coding challenges to our intern applicants, and most fail. Cool, we can finally remove CompSci degrees from job postings.

CS is not about programming.

I know, it's a wonder the degree made it on there in the first place.

Re: The Insecure Developer

#16

I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look. Having said that, our industry is full of a l…

> "How can we protect ourselves from the hordes of untalented hacks knocking at our door?"

And I think this is the wrong question to have.

"How can we get this new hire up to our standards?" would be better. Problem: once they're up to speed they'll be poached by a competitor. Answer: have real salary upgrades every-time some senior think they're better (not once a year at some review shitshow). Have a good working environment so when one of your people get to a competitor they only have good things to say about you. Then they may come back if things are not as good and may turn some of their new colleagues to send you their resumes.

That's expensive. But that's investing in your workforce. And this should be used not only for your coders but everyone.

Re: The Insecure Developer

#17

I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look. Having said that, our industry is full of a l…

And for those who don't love it... there are lots of jobs that are not programming, but are still in the industry. Quite a lot of them even pay more than programming! Seek them out.

Out of curiosity, what roles do you think pay more than programming? Product? PM?

Re: The Insecure Developer

#18
post #6

> What the heck means, “You aren’t diverse enough”? It means you're a white man and apparently it has become an accepted form of discrimination.

Or maybe it means that he was not "good enough" for the multiple technologies they use. Like just in one language but not all they use. Pretty dumb at the end if you ask me.

Then the hiring firm is a group of fools best avoided.

Tools change like fashion. What is "hot" today will be nearly frowned on in 5 years and forgotten in a decade or so. In 20 years the fundamentals still matter, the tools, not so much (Pascal? Powerbuilder? Win32 in C?)

A smart developer can learn any tool. Hire for aptitude, not today's toolset.

Re: The Insecure Developer

#19

I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look. Having said that, our industry is full of a l…

As someone who has hired programmers, I cannot upvote you enough. Last time was less than a month ago. I interviewed everybody from junior to (presumably) almost lead.

During that time, I haven't met a single soul who would be able to describe what a call stack is and how it works, in rough terms. I don't have a CS degree, but I would imagine that it is something you would learn in the first year - I was tought it in high school (but have actually learned it much later, of course). Best that I got was a description of stack data structure and mumblings about how "variables go there and it's faster than heap". And the amount of bullshit that people came up with, looking completely confident, instead of honestly saying "I don't know it", is mind-boggling.

Re: The Insecure Developer

#20
post #17

I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look. Having said that, our industry is full of a l…

And for those who don't love it... there are lots of jobs that are not programming, but are still in the industry. Quite a lot of them even pay more than programming! Seek them out. Out of curiosity, what roles do you think pay more than programming? Product? PM?

Technical management. You have to be a good programmer, of course, but it's OK if you like talking to people more than writing code.
Post reply on HN