You are reading Compiler, a software engineering newsletter by Triplebyte editor Daniel Bean that delivers regular reportings and rantings on the industry's top news, trends and interesting players.
Hello again! I’d like to start off this week’s edition with a question: What are your plans for this summer?
I ask because, although layoffs in the tech industry have headlined the news these last weeks, there have been plenty of internship cancellations, too, which look to leave behind a lot of computer science university students this summer. That is unless a sizable number of experienced, willing-to-give-back engineers like yourself are interested in pitching in as mentors!
Now, maybe you’ve never mentored before, or maybe you’ve only mentored from inside the structure of a company. Either way, if you’re interested in volunteering to take a young engineer-in-learning under your wing this summer, you may need tips on how to get started. So, I spoke to some software engineering mentorship experts this week to get them.
Where to Find Mentees
A good place to kick off your search for a CS student in need of a mentor is to check with your alma mater. Kyle Woumn, co-founder and CTO at Shopr, told me he got his start with the mentor/mentee relationship through the Mentor Jackets alumni program at Georgia Tech, where he got his CS degree. Plenty of schools offer a similar student-alumni mentorship program.
Another emerging option are digital platforms specifically built to pair software engineers with mentors. One, called InternLink, was designed specially (and very quickly) to help during this COVID-19 internship drought. “We are accepting mentors right now!” said Ming Yang, one of the founders of the project.
“Basically, we’re having prospective mentors create an account, and we’ll ask them to create a project idea, something that they’ll want to mentor for,” she said. “In the middle of May, we will allow the students to come back to apply to all the projects that they're interested in.”
Greenwoodx, also launching this month, co-founded by YouTube engineer Tremayne Stewart, looks to do some of the same mentor-mentee matching in software engineering, but with an emphasis on pairing folks based on their interests and backgrounds.
“On the professional [mentor] side, we’ll have you tell us what you like,” Stewart explained. “It could be product, civil engineering, science, math, and how many years of experience, etc. On the student side, we ask you what you want to know. And then the platform makes those introductions.
Finding mentees through word of mouth or by searching posts for help on places like LinkedIn can also be surprisingly successful, several experienced mentors I spoke with said.
What to Give Mentees to Work on
There’s a good chance you’ll have to come up with things for your mentee to work on, and looking to existing open source projects can be an easy win. In fact, any open source project looking to scale needs a steady influx of new contributors, so bringing a mentee into something you’re already working on (or something you both want to jump into fresh) can wind up being super productive for everyone. This article from Red Hat gives some good insight into the process of mentoring in new open source contributors.
And whether it’s a publicly available open source project or a private repo you’re having your mentee build/work on, Stewart believes that the act of simply approving or signing off on their code can wind up acting like a great “professional reference that’s tied right to a body of work.”
Whatever it is you set your mentee loose on, be sure to agree on solid goals and expectations at the jump, Woumn added. “It’s crucial,” he said.
Of course, it can also be a valuable experience to have your mentee just observe you working, Triplebyte VP of engineering Matt Zimmerman told me. “Don’t underestimate it! And during the pandemic, this is somewhat harder to orchestrate, so even more important to emphasize,” he said.
The Best Ways to Communicate
And then there’s the matter of making sure you’re doing your best to connect and effectively communicate with your student mentee. Pretty much everyone I spoke with had good tips on this.
InternLink’s Yang talked to me about the importance of walking the line of being a “benevolent but strict critic.” She said, “The number one complaint of mentees is often that the feedback is either really harsh or not strong enough.” She also added that always explaining “why” something needs to be done a certain way can go a long way in teaching a mentee.
Zimmerman suggested checking out a resource called the 9 Coaching Roles.
Stewart offered the note that sharing experience with your mentee in lieu of flatly giving advice can resonate much better. “From a psychological standpoint, it’s good to frame things that way instead of getting into, ‘You should do this or do that,’ which can make the person feel like you aren’t considering what’s going on in their life,” he said.
Finally, Woumn passed along the always applicable “empathy” tip: “It’s important to be patient and empathetic when it comes to teaching. Learning how to code is no easy feat, and software engineer mentors, of all people, should understand.”
More ‘What’s Old Is New Again’ in Programming
This week, the TIOBE index of programming language popularity showed that C is back at number one — for the first time since 2015. What’s behind the 50-year-old language’s surge to supplant the all-present Java (now bumped to number two)? Like the recent pop that the ancient COBOL language got, you have the COVID-19 pandemic to credit — at least in part, TIOBE CEO Paul Jansen explains:
This might sound silly, but some programming languages really benefit from this situation. Examples are Python and R in the data sciences area because everybody is searching for an antidote for the virus. But also embedded software languages such as C and C++ are gaining popularity because these are used in software for medical devices.
Of course, as Dice points out, C has slowly been climbing back in popularity for the last couple of years, anyhow, due to its use in the booming internet of things (IoT) category of gadgets. And even during its most declined years, the stalwart language has never left the top-two of TIOBE since the index began its recording in 2001.
IBM CEO: “Every company will become an AI company.” TechRadar
Facebook will allow most employees to work from home through the end of 2020. CNBC
GitHub is seeing a slight uptick in developer activity during the pandemic. Business Insider
But: Is it right that devs spend their free time coding? Dev.to
Project interviews in a remote-first world. Hiring for Tech
Hot take: Algorithm tests in engineering interviews are actually not as pointless as you think. That’s the gist of a new blog by veteran technical interviewer Joseph Pacheco, where he argues that, though on-the-spot algo quizzes aren’t perfect assessment tools, they can often help hiring teams rate problem-solving abilities in candidates and level the playing field when recruiting across different skillset categories. Taking the time to learn this stuff for interviews can also carry over into your work to make you a more thoughtful dev, Pacheco assures. Read all of his thoughts here.
Want to know all about the big data and machine learning projects being put to work on finding a COVID-19 vaccine? Triplebyte’s science writer Jen Ciarochi walks you through how they work in her latest article. When a vaccination does come along, you may have open source reverse vaccinology programs like Vaxign or Bowman-Heinson to thank. Read the whole article here.
Some companies hiring engineers on Triplebyte right now:
Check out Triplebyte’s Actively Hiring page to find more companies that are looking for software engineering talent right now!
New in this version are some tweaks to how app picture-in-picture works/looks, an ability to “undo” swipe-closing apps in multitasking view, and added theming options in the launcher.
This is a new feature that lets you code for a GitHub project directly in a web browser (thanks to VS Code). This means you’ll no longer need to set up an environment on your local machine. As The Next Web puts it: “Think of this as a virtual Integrated Development Environment (IDE) on the cloud.”
This version drops support for Python 2!
Triplebyte helps engineers assess and showcase their technical skills and connects them with great opportunities. You can get started here.
If you just happened upon this newsletter, subscribe with the button below to get new editions sent right to your inbox.