Five Things We Wish We Knew When We Started Working as Software Engineers
Contributed by Vanessa Gutierrez, Software Developer at Adobe & Banafsheh Derayat, Software Developer at Yelp
As two 2018-university-graduates-turned-software-engineers, we’re wrapping up our first year of work. After reflecting on our time at Adobe and Yelp, and polling other grad’s in our networks, we found the top five things we wish we knew when we started.
Here are the highlights:
- How to ask questions
As an intern, Banafsheh was told she wasn’t asking enough questions and that she was spending “way too much time” figuring things out on her own.
It’s a familiar struggle for junior engineers: when do you ask for help?
Don’t know where to start? Simply ask, “What should I check out to get started on this?” This’ll send you in the right direction and unblock you, and it’s different from asking for prescriptive steps.
Otherwise, ensure you have a well-formed question. Try typing your question in a message–but don’t send it! Try to answer it, or think of follow up questions. Repeat until you’ve answered all your questions or are stuck. Now ask someone (or hit send) with specific questions that’ll save time and demonstrate you’ve given it thought before approaching them.
- Who to ask questions
First, consult your code base, internal documentation, or online resources. You’ll either find answers easily, prime yourself to understand a teammate’s explanation, or confirm it’s difficult to figure out alone and therefore you aren’t wasting someone’s time with an easily searchable question.
So, documentation first — who’s next? With technical questions, talk to someone who worked on the same thing, or something similar. Independently identify who that is with Git Blame, or Author, to see who last touched relevant lines of code.
Still unsure who to ask? Approach your mentor, technical lead, or manager. They’ll direct you to the right person, and over time you’ll learn who to go to for what.
- Communicating with your manager
A combination of unusual events meant Vanessa had three managers in three months. Expectations for her success and her evaluation against those expectations became ambiguous, and as a result, things became…stressful.
Though her situation is highly unlikely, it accelerated some consequences that come from lacking transparent expectations and goals with your manager. So, how did Vanessa, and how can you, kick-start and maintain clear communication with them?
First, find out how your manager prefers to communicate: Slack, email, stopping by their desk, a recurring one-on-one on the calendar, setting one-on-one’s as needed, etc?
When you do talk with them, touch on some items we found helpful in our conversations with our managers:
- Your progress since your previous one-on-one. Keeping a “work journal” to track what you need to do, and what you’ve finished, helps here.
- Ask for feedback on your recent work. Regular feedback lets you keep a pulse on how you’re doing and prevents you from being blindsided by future evaluations.
- Clarify what you’re working on next in the short term, and confirm your tasks for a longer period of time, say, until a big deadline.
- Confirm technical requirements, prerequisite knowledge and expectations, and if there are multiple things on your plate, confirm priority.
- Anything else: blockers, struggles, miscellaneous concerns, time off, or feedback for your manager or team.
- How to get valuable feedback
When we surveyed other working new-grad’s, learning how to get “good” feedback was a recurring theme.
So…how do you get more than a “You’re doing great”?
- Learn about official pathways for getting feedback in your organization. At Adobe and Yelp, quarterly Check-in’s make asking for feedback, evaluations and expectations an approachable and expected discussion.
- For higher frequency, prompt feedback during your one-on-one’s. Try a simple “I’d like some feedback on my progress,” and dig deeper from there. Asking may be intimidating, but addressing any potential areas of improvement is crucial.
- When given vague feedback, clarify with follow-up questions and ask for action items.
- If you don’t feel comfortable responding, you don’t have to — ask for time to consider the feedback.
One of our poll respondents said, “I wish I’d known the importance of going to lunch.” Well, we agree. Here are the ways we’ve most successfully networked at work–including lunch:
- Joining Employee Groups and Clubs – They’re communities that connect you to others with similar interests or backgrounds and push you to interact with people you may not otherwise..
- Ask people to lunch – whether group or one-on-one, lunch is an easy way to build relationships naturally, early and continuously.
- If lunch is too long, but “hallway conversations” don’t cut it, ask people to grab coffee so you can hear more about their role, career path, or whatever else interests you.
- And what about people outside your location? Video conference and have virtual coffee or virtual lunch!