I have completed my first month working as a full time Junior (very, very junior) Software Engineer. Actually, I am fuzzy on the titles, but who cares. After all the years of learning on my own using online resources like FreeCodeCamp, books, and going to school for Computer Science, I am finally in!
I work at a startup called pitch.Me. You should download our app, my code is in it, yes one month and my code is actually used by other humans! Now, do I work a lot? Yes. Do I love it? Yes, I work a lot because I love it, I spend every day driving for two hours for the same reason.
I am learning React Native, React, Mobx, TypeScript, the list is really long. This learning experience is hard, but I am also learning from really intelligent and caring people. They care to take the time, they care enough about code base to write tests, to write documentation. I mean it’s a startup so it is all about delivering the minimum viable product, but also care about the person who will read this code after you.
The first JIRA card for me was incredibly hard. I had no idea how to write tests in this living code. It turned out that the first test I actually wrote didn’t even test the code I wrote. Oh, embarrassment, but it’s ok, I am human, the only thing I can do is try, fail, try again, succeed eventually. A couple weeks in and I had a pull request approved without push back and I almost spit my morning coffee while reading that email from GitHub, see trying pays off.
The culture is very different. People are opened about what they are talking about, what they are struggling with. Lunches are good times to get to know the people, as are the games of ping pong. People genuinely care about the product, the users, the charities. Honestly, I do too. I think so many opportunities get lost in the spam folder or deleted emails because the subject line seemed fishy. pitch.Me provides an opportunity for me to find a mentor, or a person that can help me, or for me to become a mentor. I’ll be glad to schedule a call with anyone and answer any questions about my experience if you have questions.
What I wish someone told me back when I was learning:
- Watch videos by developers and memorize the jargon, because when I ask a question sometimes I have to paraphrase it to make sure I understand what the person meant
- Care about quality, but don’t obsess over it
- Learn to be ballsy, if you notice some code in open source that you don’t think is good, submit a pull request, because in the real world you will need to modify code that is not yours and nobody’s feelings will be hurt. Probably…
- Learn your tools. I was lucky because I had some time during my internship to discover all the VScode plugins I wanted and cared to setup iTerm and zshell… They save time.
- Don’t criticize others too much because you are not perfect, but still speak up.
- Finally, software engineer is hard, prepare yourself for struggle. But as JFK said:
We choose to go to the moon in this decade and do the other things, not because they are easy, but because they are hard, because that goal will serve to organize and measure the best of our energies and skills, because that challenge is one that we are willing to accept, one we are unwilling to postpone, and one which we intend to win, and the others, too.