The bad sides of programming

Anthony Ng
9 min readFeb 19, 2018

--

Programming isn’t all fun and games

Introduction

I graduated from a business school with a Masters of Science in Taxation. I was a Certified Public Accountant working at a large accounting firm.

I know, pretty awesome.

The Most Interesting Man in the World

I got promoted to a Senior Tax Associate after 3 years and was ready to settle down. But a motorcycle accident brought me to the hospital. I was very luck to only have minor contusions.

Dramatization of the moments leading up to my accident

It was a scary moment for me. Thoughts ran through my head as I reflected on what I had done with my life. Thinking about death has a way of doing that.

Steve Jobs giving Commencement Speech at Stanford, 2005

I was watching Steve Job’s commencement speech. It’s macabre but inspiring at the same time.

I recommend everyone to watch it at least once. You can find it on Youtube here.

One quote that stuck with me was:

I have looked in the mirror every morning and asked myself: “If today were the last day of my life, would I want to do what I am about to do today?” And whenever the answer has been “No” for too many days in a row, I know I need to change something.

The tax industry is very seasonal. You can spend three months working 60–80 hours a week. For the other part of the year, you have to pretend that you are working for 40 hours a week so you can bill clients. I definitely did not want to spend the last day of my life doing taxes, and decided to change careers.

I had taught myself to program as a hobby in college. The most exciting part of my time as an accountant was using Microsoft Excel and learning Visual Basic. I built a macro that did some boring tax stuff, but I loved that it saved my coworkers from doing the boring stuff.

Side note for anyone who uses Excel at work. Teach yourself Visual Basic. It was my gateway drug to JavaScript.

I had a romantic idea of what life as a web developer would be like. I would play ping pong, eat free snacks, and find an hour or two to code while imbibing Le Croix.

My work expectations were formed from the film, The Internship

I get asked about how my own career transition went. Most people have an idea of what the great parts of programming are. I wanted to share some of the bad sides of programming that surprised me.

Bootcamps are hard

I attended the Web Development Immersive course at General Assembly. I met amazing classmates and had great mentors/instructors.

I had the lowest of lows when I ran into a bug that my googling skills could not solve.

Don’t worry, your Googling skills will improve over time by necessity.

I had the highest of highs when I finally solved a bug and felt like a king. I was hooked.

Don’t worry, these highs will still be awesome years later.

When searching for bootcamps, you will see advertisements of 90% job placement with $100k+ salaries. A lot of students joined bootcamps for this promise. But some thought that showing up was enough.

Showing up is not enough!

Some students slept during class. Some students were more concerned about the next happy hour than their projects. And why wouldn’t they? We were all waiting for the 12 week course to end so we can get our cushy jobs.

A couple of weeks into our bootcamp, we had an alumni Q&A session. The students were all bright-eyed and excited to hear how amazing life would be.

And then one alumni brought everyone back to reality.

Falling back to reality

This alumni talked about classmates that took 3 months to get a job. She talked about classmates that took 6 months to get a job. She talked about classmates that are still currently looking for jobs. I know of alumni who gave up looking for web developer jobs after a year of searching.

Her advice to us was to hustle. Learning what REST API’s and MySQL are might be hard. But going out into the job market was going to get harder.

Recruiters are awesome, if you find a good one

The job search that came after graduating from Bootcamp was miserable. My daily routing involved going through a dozen job posting sites. I kept track of all the job listings that I applied to in a Google spreadsheet. I highlighted rejections in yellow. Weeks into the search, it was depressing watching my spreadsheet grow into a sea of yellow.

This is what depression looks like to me

I was too introverted to attend Meetups and network.

Advice for those scared of meeting new people; stop it! Go out there and talk with one person. You will never know what will happen if you do this. But you will know nothing will happen if you don’t.

I would get shimmers of hope when I got a phone call. I would rush to get a pen and paper to write down my prospective interview date.

My phone conversations would go like this:

Me 😀: Hello, this is Anthony speaking.

Recruiter 👨‍💼: Hi Anthony. Yada yada yada, tell me about your work experience.

😀 : Oh, I went through a coding bootcamp for 12 weeks. I learned to build full stack applications using Angular and Express, with a Mongo database.

👨‍💼: Oh…ummm…do you have any real experience?

😐 : No…

👨‍💼 : Okay. I’ll contact you if I get an interview date.

😐 : What…

I would get a number of these calls, and I wondered if going to bootcamp was the right choice. It was frustrating to have invested all this time and money. But it wasn’t getting recognized by recruiters. My frustrations eventually crept into my phone conversations with them.

😠 : Hello, this is Anthony.

👨‍💼 : Hi Anthony. Yada yada yada, tell me about your work experience.

😠 : Do you have my resume?

👨‍💼: Ummm…yeah I do. Give me a minute.

😠 : Okay…

👨‍💼 : Oh…I see you only have 12 weeks of experience. We are looking for someone with 2–3 years of experience.

😠 : Did you even look at my resume? I’m trying to understand why you’re even calling me.

👨‍💼 : No, sorry…

I feel bad for how I acted during those phone conversations. I had devolved into a grouch only weeks into my job search. I cannot imagine how hard it is for those months into their job search.

Thankfully, I was introduced to a recruiter who helped me find my second and third contract roles after bootcamp. This recruiter actually met up with me over a cup of tea. She read my resume and learned about me. I felt like she genuinely cared about me. From my limited experience, good recruiters are hard to come by.

There is no perfect code

In bootcamp, we are taught the best practices of coding. Have good variable names. Keep your code DRY. Commit your code with descriptive commit messages.

These best practices aren’t as common as you’d expect in the real world. The real world has business deadlines that we have to hit. The real world has inexperienced developers without proper mentorship.

Whenever you do see good code, cherish it. It’s surprisingly hard to come by.

Developers don’t care

The people I worked with in my bootcamp were all excited about coding.
Excited might not be the right word…
Passionate might not be the right word either…

But everyone in the bootcamp was motivated to code well in pursuit of a new job.

In the JavaScript Meetups that I went to, I was surrounded by people who are passionate about the technology. You would have to be to go to an event on your own time. But these people were not a good representation of the people I would meet in my career.

At the workplace, you will meet good developers who are not passionate about their work. They see it as a career path. They see it as a means to get a comfortable retirement. This is where I saw myself as a tax accountant years ago.

And there is nothing wrong with that. You will meet people at different points in their lives. They will have a family. They have kids to take care of. They have housework that has to get done.

Take a look at this Quora question asking if it’s okay to be an average developer

But, you will also see bad developers. You will meet people that just don’t care about their work. I’ve heard of developers who do the bare minimum during a sprint. And then in the next sprint, try doing even less. How little work can you do to not get fired?

This isn’t isolated to the technology industry. I know a nurse who cares very much about her patients. But her coworkers do not. They do the bare minimum and ignore patient’s requests. Unless they will get in trouble, they will ignore their duties or push the responsibility to someone else. The nurses who care will have to carry the team. Just like a developer would have to.

Toxic Environment

The technology field is very male dominated. And stories such as the sexual harassment and sexism at Uber certainly don’t make the field more inviting.

I was surprised by one conversation I had with another developer. Let’s call him Bob.

😎 : What are you working on?

😀 : I’m creating a webpage for a friend.

😎 : Really? What does he do for a living?

😀 : Well she’s a designer.

😎 : Oh, that explains it.

🤔 : What do you mean?

😎 : Well if it was a guy, he could have learned how to do it himself.

I live in San Francisco, a diverse and tolerant city. I was definitely surprised to hear someone talking like this firsthand.

The nature of the tech field also breeds a hostile environment. You have people hiding behind their screen names and avatars (think cyber bullying in a professional environment).

I remember seeing this Github issue that was opened in React Router. The issue has since been edited, but the person rudely asked how to get something to work. He then went on to call the maintainers/creators of React Router f***in idiots. You can see the reaction on Twitter here, and in the original issue.

I was shocked at how someone could be so hostile in an open manner. Especially when the reason is that the code they did not pay for did not work as expected.

Bad people are everywhere. The tech field is not immune.

The hustle is bad

You will hear people bragging about how many hours they have coded. You will hear about the side projects that they are working on. And you will get pressured to do the same thing.

While these people are out there creating their next startup, you’re busy trying to find your next Netflix show.

Not all people are built the same. Not all people can work that much. Some people can handle more stress than others. Some need more time to relax. Don’t feel pressured to do more than you have to do. You will get burned out!

There were periods where I coded all day at work. Then I would go back home and read coding tutorials. And then I would do more coding on the weekends on side projects. If you do not enjoy doing this, do not feel obligated to do so!

There is nothing wrong with you! Contrary to popular belief, it is okay to sleep!

In my short time as a web developer, these were some of the bad things that have surprised me. Have you seen something similar? What have your experiences been like?

I only talked about some bad experiences in this article, but I still have no regrets about changing my career. If I could, I would do it all over again.

It’s little things like this song that brighten my day and make me glad I changed 💕

--

--