Coding is fun, imposter syndrome is not

I’ve been working on a personal project for the past couple months and I’ve realized that I really do love programming. Which sucks. Because I’ve been wanting to quit programming ever since I got into it. I feel like my life goes through these phases where I feel like I’ve struggled enough, I’ve given this career an honest try and maybe it’s time for something else. It happened in high school, it happened in college, and it’s happening now.

But then I have no idea what I want to do. All I want to do is program and solve problems. It sucks because I really want to be working in something I enjoy, but also don’t believe that I’m any good at and it’s really affecting my self-esteem.

I often daydream about what my life will be like in 5 years and how I’ve pulled myself together and am conquering real life problems. But it keeps me from the present, in which I’m less satisfied in.

On the plus side, the project I’m working on has been pretty frustrating. I love that. There’s something so satisfying about being frustrated at something and working through it and solving it. It’s a type of masochism that programmers go through, I suppose.

PS. I also worry that by complaining so much, I sound like I want to be pitied. Has blogging become so self-censored? I want to write my feelings, but I also don’t want to give off the wrong impression. Ugh.

Pushing people away

An alarming trend that I find myself doing is pushing people away when I’m not happy. This can be with friends, family, colleagues, and even strangers. It’s been happening a lot over the last few years because of my career, or lack of. I find myself feeling inadequate and questions like “How are things going with you?” increasingly difficult to answer. I feel like I have to explain myself, why I’m not working, why I don’t have a job, why am I a failure (this one is self-projected) and it’s hard. It’s really hard. As much as I believe people have the best intentions, it’s hard to revisit why things are the way they are.

And thus, I push people away. I avoid talking to people. I avoid social events. And it sucks. Isolating myself doesn’t make things better, but seeing people also gives me anxiety.

Anyone else feel this way? Is there a way to fix it?

three things

1. I find that blogging has become less about your feelings and more about what feelings you want to project to the world. Your name is attached to everything and it’s easy to trace back to you.

2. On the same vein, I have a lot of fears that one day I’ll write something that I’ll regret or something and it’ll be used against me. I feel really guarded about my online life because I’m scared it’ll ruin my real life.

3. Timehop has been really interesting. It’s amazing how much I’ve changed in the last few years. I feel like I’m a totally different person from the stuff that I used to post about. I wonder if a lot of “immature” people I meet on the internet will one day grow up and have different opinions. I mean, it’s bound to happen, right? People change. Sometimes I feel almost ashamed about what I used to be, but that’s stupid. I need to love myself, even though I don’t agree with things I used to anymore. It’s part of the growing process.

Three Things

I’m gonna try something new. Shorter random thoughts. :)

1. Working on personal projects is hard. You have to like it enough to keep working on it, but it’s so easy just to quit because no one is counting on you.

2. Javascript is the bane of my web development experience. It’s new and scary and confusing. Trying to be positive, but ugh. :P

3. When working on my personal project, everything else goes to shit: working out, doing chores, even eating. Getting sucked into one thing makes everything else pushed aside.

Tips for Interviewing for Developer Positions

I’ve compiled a few pointers for people who are starting their interview process. I’m coming at this post as a programmer who is just starting out her career. Some of the advice may be more relevant to newbies, but I think all points are universal tips.

Apply EVERYWHERE

You can’t get a job unless you apply. One of the things I’ve learned is that you just have to apply, apply, apply. You might get a response from only a small percentage of those that you’ve applied for. When I first started the interview process, I was only applying at companies that I thought would suit me and would ignore a lot of potential companies along the way.

Apply at companies that don’t interest you.

Even if the company doesn’t interest you, you should still apply. If you don’t get an offer, you probably won’t be heart broken about it, and if you do get an offer, congrats! You can use this offer to help get more interest in your application. When you get that first offer and you mention to recruiters that you have an offer on the table, companies tend to speed up your application. Having an offer is like being the first kid picked in a game of dodgeball. All of a sudden, someone is interested in you so now everyone is interested. Also, who knows, maybe that company that didn’t originally interest you won their way into your heart during the interview process.

Apply for positions that don’t exactly match your repertoire

I started treating job descriptions as suggestions rather than concrete requirements. I didn’t go crazy with it and start applying for senior positions when I have no experience, but if I was within +1 year of experience that they posted, then I would apply. If I didn’t know all the technologies that they use, I would still apply. The worst thing they can do is tell you that they were looking for something else. And hopefully at this point you’re rolling in interviews that one company isn’t going to break your stride.

Practice in the meantime

I have the “luxury” of interviewing as my full time thing. But interviewing doesn’t take up 40 hours a week. So take some down time to  practice your skill. Pick up a personal project, contribute to open source. You can even look up interviewing questions and work on those. With everything you do, I’d suggest putting it up on GitHub publicly. Even if companies don’t delve into your code, they can see how many commits you’ve made and it lets them know that you haven’t been doing nothing during this time. It also doesn’t have to be a big project. You can write a small script or fix a bug.

Don’t apologize

I mentioned this in my last post: Don’t apologize, but I think it needs to be reiterated. Your story is yours. If you have gaps in your resume, don’t apologize for it. If they ask, let companies know what you were doing during this time, taking a break, traveling, learning new things, worked in a personal project, etc. I think it’s important to remember that you can’t change the pass, so might as well make it as positive as possible. But don’t lie. Lying is bad and it shouldn’t be needed anyways. You should focus on what you’re doing now rather what you didn’t do in the past.

Have a support system

Interviewing can be really mentally, emotionally, and physically exhausting. It’s not easy to continually put up your best face and subject yourself to prodding by another person in hopes of impressing them. I find that the interview process makes me feel very naked and vulnerable and this can affect my mood. I don’t think it’s a weakness to feel this way, but I feel like there are healthy ways to deal with it. You can find people in the same position as you and rant about how much an interview sucked or what they found helpful. You can just go out with friends and focus on other things in life. You can make something that makes you happy or proud. Whatever it is, it’s good to realize that interviewing isn’t the only thing in your life.

Don’t take things personally

This is the hardest thing for me to get over. When a company rejects you, they’re not saying you’re a bad person, a bad programmer, or a bad anything. You don’t always know why they decided not to go with you. Maybe your interviewer didn’t feel like you meshed with their company culture. Maybe they’re looking for something really specific. Maybe they’ve already filled the position and kept the job description up because the other person didn’t sign the contract yet. Maybe they’ve lost their budget for the position. Maybe they’re not really looking to hire and are just interviewing to test out the waters. It can be a million different things. It’s just important that it’s not you. Unless you’ve done something monumentally offensive, it’s not personal. I often would get my hopes up for a company only to be crushed by the fact that they didn’t give me an offer. I would then spend time wallowing in a pit of self-pity because I didn’t think I was good enough. Nowadays, I can handle rejections a lot better. You have to keep in mind that you get rejected A LOT. Let it roll off your bad and pick yourself up because the next interview is coming up.

I hope this was helpful to people. If not, it was cathartic to write down my experiences. I’m still trying to use these tips myself. I think it’s very possible to feel alone in the interview process and it helps to know that interviewing is HARD and people struggle with it. Good luck!

Don’t apologize

Last night, I went to a Geek Girl Dinner hosted by Box. I had run late because of traffic and was frantically trying to get in without being a nuisance. I snuck in, grabbed some delicious greek food and settled in for the talks. I thought all the talks were really great, but one in particular resonated with me. Tamar Bercovici is a Senior Engineering Manager at Box and she chronicled her experiences transitioning from a theoretical computer science major with a PHD, to a web developer, to a manager.

As someone who is going through the interview process once again, it was really interesting to hear her struggles and triumphs. She had prepared heavily prior to interviews, and applied to a ton of places – she even snuck into career fairs at schools she didn’t attend. The thing that really resonated with me was her mantra during the interview process: Don’t apologize. She didn’t apologize for not having web experience, or having a PHD, or the fact that she was making a change in her career.

I think more often than not, I apologize for a lot of things. I apologize for not having enough experience, I apologize for not working during my gaps, I apologize that companies may potentially have to support me more (even though this won’t be the case). Whether or not I explicitly say sorry, I know that sometimes my tone is not the most confident. There’s been an anecdote floating around that women just say sorry more often. Pantene’s ad sparked a conversation about how women feel the need to apologize for things they shouldn’t have to.

So I think I’m going to stop apologizing. I didn’t work during my gaps, yes, but I was spending time learning, contributing to the coding community, taking time to travel and see the world. I wasn’t doing nothing. I was making myself a better person and a better programmer.

I’m going to scrawl “Don’t apologize” somewhere above my computer so I can remind myself that I have my own story. It’s mine and mine alone. No one – especially me – should put me down for it.

Some thoughts

I need to start focusing on what I have done instead of what I haven’t done/need to do. It’ll probably be better for my sanity. Focusing on only the negatives makes me feel like I haven’t accomplished anything.

So let’s all take some time to look back and all the amazing things that we have done and how much we’ve grown and changed. We can take a look at the struggles we’ve faced and how we’ve overcome them. Or not. Sometimes the struggle is an ongoing process and that’s okay. Struggling with thing is part of the journey and we just gotta take in stride. Of course, it’s always easy to say such things. In any case, I think it’s safe to say that everyone has dome something that they should be proud of, whether it be something tangible or not.

Not even sure where I’m going with this. Just wanted to write down some unadulterated thoughts.