This is a guest post from Chad R. Stewart. Enjoy.
Dear New Developer,
It’s very easy to think that Software Engineering is solely about writing code and knowing tools. For the first few years of your career, you’ll likely be evaluated mainly on the code you produce. But trust me when I say, the relationships you build are just as important as your coding ability. If only your technical knowledge is equal to your potential impact then the relationships you build is a force multiplier to the potential impact your technical knowledge would have on its own.
Let’s look at how relationships help make job hunting easier!
As a new Engineer, your biggest hurdle in your career currently will be getting your first role or your first few roles. This is because you don’t have a proven track record of delivering more value than the cost to hire you. Employers often don’t want to take a chance on newer Engineers because they worry that the investment won’t pan out because either you aren’t growing to meet their needs or because you’ll rapidly depart, taking all the resources they invested in you. Hiring you would be a big risk to employers.
Having others advocate for you on your behalf reduces that risk in an employer’s mind.
If you apply for a role as a Junior Engineer, you are just some random person with little proven value looking for a job. If John, a Senior Engineer who’s been with the company for 5 years and has led several crucial projects that has made or saved the company millions of dollars, says that this person is a good hire, you’ll be looked upon much more favorably. This is especially true if John is the hiring manager for a role and therefore has a huge influence on who gets hired into that particular position.
These are known as referrals and they make the job hunting process significantly easier for Engineers of ALL levels. When your network becomes large enough and the connections you have with people strong enough, these are JUST ONE of the benefits you gain.
Another benefit is these referrals will come about for job opportunities YOU DIDN’T KNOW ABOUT OR WHERE EVEN LOOKING FOR! There are several Engineers who got job opportunities even when they weren’t looking simply through their network, myself included.
Once you have a job, here’s how relationships help you deliver better value!
As a new Engineer, your scope in a project will be limited primarily through your lack of knowledge. As you grow in knowledge and experience, your ability to add value to a system and the amount of value you add will grow as well. What you will eventually find is that your ability to add value will be limited to the amount of time you have available to you and your expertise. These bottlenecks are the reason why projects have multiple people on them and they all have their own experiences, strengths and interests in delivering value! The only way to deliver value through multiple people is with some form of coordination…
And the best way to coordinate with people is to build strong relationships and trust with them!
Let’s say you’ve been working on a project for a while and there’s been a bottleneck the team has dealt with since its inception. You learn about a new open source tool that has the potential to remove the bottleneck! Thing is though, it takes some time to learn and implement. Let’s consider two scenarios when you bring it to the team.
Scenario #1: You’ve been on the team for some time but you’ve never said much. The code you write has been okay but improving but you primarily speak to team members about work and nothing else. You bring up your findings and the team is hesitant. You make the argument that this could save the team so much time but team members are worried about the time to implement and aren’t convinced the benefit outweighs the risks. At the end, your idea is shot down.
What if you had a better working relationship with your team?
Scenario #2: You’ve been on the team for some time and you make it a point to talk to everyone and make friends. You chat with team members about work and their lives over lunch all the time and start playing online games with some of them! You especially hit it off with Ricard, an avid gamer who especially loves fighting games. You bring up your findings and the team is hesitant. Richard speaks up, saying he thinks it’s a good idea to try and use it. You start talking implementation details with the team.
The above example is a little contrived but is an example of how your relationship with your teammates made them more receptive to a risky idea because they know you. The relationship could be improved even further through building trust by delivering work successfully and how you go about doing so. After delivering projects, the team would be even more receptive to taking risky bets you suggest because you have a track record of doing good work, especially if that track record includes making good engineering decisions along the way.
This is an example of building and leveraging influence. Influence takes many forms but in essence is your ability to accomplish goals based on the people you know and who are willing to help you accomplish goals. A key mindset shift as you grow from a Junior or Mid-Level Engineer to Senior and above is leveraging influence and the relationships you’ve built in an organization to accomplish goals and improve company efficiency. The senior you become, the more responsibility you have but you gain that responsibility through building trust with other Engineers and upper management in delivering large value projects that push the company towards it’s KPIs (Key Performance Indicators).
Let’s take a look at how relationships help fuel an awesome career
Some think that merit and your skills are the main reason you succeed as a Software Engineer. It is true that your ability to deliver is important but as mentioned at the beginning of this letter, if your skill corresponds 1 : 1 with your impact, your relationships are an impact multiplier. Here’s an example; if you know a manager in a very impactful team and get them to leverage their influence to get you on the team. You can use this same idea for promotions as well. If you have strong positive relationships with everyone who handles promotions then you’ll have a much easier time getting promoted within a company.
But relationships lead to so much more than just career opportunity!
Relationships inside an organization allows you to navigate and have impact in that organization easier but relationships outside of an organization can give you access to opportunities and resources you’d never get otherwise. An example which is very similar to the job hunting example above is instead of you knowing that the opportunity exists and you’re leveraging your network to get it, someone with an opportunity approaches you because they know you well enough to think you’ll be a good fit for the role. You’d have never even known the opportunity existed to even pursue it!
More interestingly is the potential for learning about new tools and techniques to do your job better. This story still blows my mind to this day! I was told a story of a Software Engineer working in Silicon Valley and their team came across an issue that they were having a hard time solving. Some team members knew of another team in a different company that had come across a similar problem and solved it, so they reached out to that team for help. They agreed to help, came over that afternoon and within 2 hours, everything was done and they were completely unblocked.
The interesting thing here is, they knew of the other team because members of both teams attended the same meetup. That’s how they met. Meetups, conferences and Tech Twitter is a great way of learning about new tools and techniques, how you can leverage them and have conversations with Engineers who may already have experience with them.
So let’s talk about how you build relationships.
Relationships are not transactional. You don’t spend relationship points and directly get a benefit. You build relationships over time and they tend to be around a common theme. You like TypeScript and someone else likes TypeScript so you talk to that someone else about TypeScript all the time. You are learning System Design and so is someone else so you bounce ideas off. You like Street Fighter and some other Engineer likes Street Fighter? You get together and play.
So what’s the key to building a relationship?
Just consistently show up and have a positive impact!
People will remember other people they see often and people will remember other people who have an impact on them, regardless of how big or small it is. Just showing up is such part of relationship building, just simply being there. It doesn’t have to be this huge elaborate thing where you have to go to a specific event and talk to this many people and get these many contacts. Networking can be as simple as going on Twitter and saying “TypeScript rules!” and interacting with the people who comment on that tweet. And then just keep doing something like that regularly. Comment on people’s tweets or posts, either replies or questions and to do so consistently because people will start to recognize your username or avatar and will get to know you through your replies and questions.
So where do you go to talk to people and build relationships?
Here are some good places to start:
Tech Twitter is a townsquare for general conversations in tech. While it was powered by the #TechTwitter hashtag, it’s just what people call people in Tech who interact with other Tech people on Twitter. There aren’t easy ways to discover people on Tech Twitter but here is a list of people to start.
@ParissAthena (bonus: here’s a letter from Pariss)
@eddiejaoude (bonus: here’s a letter from Eddie)
This is by no means an exhaustive list but it will definitely help get you started in finding interesting people to follow, learn from and talk to.
Special note: Twitter Spaces are a great way to meet people on Twitter and let them get to know you! From the list above, notable people who run Twitter Spaces regularly are:
@ParissAthena (bonus: here’s a letter from Pariss)
One other thing I want to add is the value of contributing to open source. Contributing to open source is an effective way of learning new tools and technologies as well as networking with other Engineers. While I have some experience with open source, I will defer to @eddiejaoude and his Discord group Eddie Hub for learning more. He is a huge advocate for open source and is a great place to go for beginners to get started in open source!
So that’s my letter! Sorry if it was a little long but I wanted to ensure I captured the importance of relationships in your tech journey and how it will greatly influence your career for the better! To recap:
- Relationships can give you access to opportunities and resources you are seeking or didn’t even know was out there
- Relationships are essential once you want to deliver impact outside of yourself or your immediate team and quickly becomes the tool of choice for the more Senior Engineer.
- Build relationships by consistently showing up and leaving a positive impact on people
I hope this was helpful. Best of luck in your journey and you absolutely got this!
— Chad R. Stewart
Chad R. Stewart is a Full Stack Engineer from Kingston, Jamaica. He is the Founder of @TechIsHiring, a space run primarily from Twitter that serves as a resource for people looking to find a new role in Tech by promoting job seekers, job opportunities and supportive information and articles that help the job search.