By Frances Advincula (Software Engineer, Accenture)
In my last article, I wrote about lessons I learned as a young woman in my first engineering job fresh from undergrad.
I thought this week, why not write about things I learned from the exact opposite of that — golden nuggets from programmer friends who have been in the industry for a while.
Now, these are just tidbits that stuck to me during Friday night dates, or in conversations at lunch, even over gossip sessions via Skype, but I thought I’d share them anyway. However, be warned: proceed with caution and take at your own risk.
Always assume what the person is telling you about the code is wrong.
Don’t be afraid to ask questions and explore other possible solutions, even if someone more senior than you has pointed you down a path already. Getting a second opinion never hurt anyone, but depending on your company’s culture, be careful about how you approach this. (See the advice on humility below.) Plus, this is where we see a value to being new: you are not familiar with what’s in the box, so you are more apt to think outside of the box and come up with a better solution others may not have thought of.
Also, it’s your name that’s going to show up in the commit logs, so again, always triple check. Ask for a code review and ask multiple people for feedback before you commit anything.
One of my friends had a less than desirable experience once. Upon being hired, he was handed his laptop and pretty much just left alone in a corner without any direction, which is very overwhelming in any new job, programming or otherwise. Well, he got, I quote “really pissed,” and he went home that night driven to learn the code base. A year later, he was promoted to a role usually saved for people with at least 2-3 years experience.
The lesson? Find your motivator, whether it’s anger, frustration, some unworked childhood insecurity, whatever, and channel it into making you work harder and with more focus.
Don’t let your ego get in the way.
I’ve heard it so many times among my more experienced friends that the people who thrive as programmers are those who are humble. Why, you may ask. I suspect it is because they aren’t afraid to look stupid so they ask questions everyone else is thinking of, but are uncomfortable to ask. I am almost sure it is because they are okay with making mistakes since they know they’ll learn from them. They are not afraid to learn from others, and they could care less about who gets the recognition, so they get stuff done.
From “How Will You Measure Your Life?” – “And if your attitude is that only smarter people have something to teach you, your learning opportunities will be very limited. But if you have a humble eagerness to learn something from everybody, your learning opportunities will be unlimited.”
In that note, someone pointed out to me that being humble is not thinking less of yourself, but thinking less about yourself. This is something that I struggle with, I admit. Sometimes, I don’t feel comfortable asking for help because, well, I want to look like I know what I’m doing. I should really take my own advice and realize that it’s not about me, it’s about getting stuff done!
Carry your confidence card around.
On a more positive note, another one of my friends was a bit insecure when he first started working professionally. The other guys were sympathetic and tried to encourage him by letting him borrow their Microsoft certification cards. Of course, he’s now doing just swell, which leads me to wonder if there, is in fact, real value to “Fake it ’til you make it.”
I’m not a certified in any shape or form, so I’m thinking of writing down my accomplishments in a little index card and carry it around with me in case of emergencies (You know, when you’ve been stuck on a problem for day #2 now, and code cutoff is tomorrow…). Or maybe that’s being too mushy. What do you guys think? Do you have anything you carry around to boost your confidence in yourself as a developer?
Oh, but one last thing. Some say we learn best by example, and I’m fortunate enough to work with really smart, rockstar engineers, and here is one thing all of them have in common:
They always leave the code cleaner than they found it. We all should too.
This post was originally posted at Femgineer.
About the guest blogger: Frances Advincula is a software engineer at Accenture. Frances just graduated with a degree in Computer Science with specialization in Software Engineering. She contributes to The Levo League, Women 2.0 and STEMinist. A proud geek girl, she’s sure she is the only one who can’t play video games. Follow her on Twitter at @FranAdvincula.