Do You Want to Do Master In Programming Language and Become A 10X Developer? Here are The Points

By Kimberly Cook |Email | Feb 11, 2019 | 103032 Views

The key to becoming a fabled 10x programmer, according to Trisha Gee, developer advocate at software firm JetBrains, is to practice pair programming, but with a twist.

The notion that programmers can be 10 times as productive as their colleagues may be vaguely ridiculous, but there are few people who wouldn't want to be more efficient.

The key to becoming a fabled 10x programmer, according to Trisha Gee, developer advocate at software firm JetBrains, is to practice pair programming, but with a twist.

Pair programming tasks a couple of developers with working together at a single computer, jointly solving problems and devising code, with one dev typing in code while the other reviews it.

"The best way to become a 10x developer is to teach nine other developers to do your job as well, not to get ten times better," she told the O'Reilly Software Architecture Conference NY 2019.

"So let's talk about how you scale your skills by sharing your skills, sharing your experience with other people, my favorite way is a pair 

However, Gee isn't just an advocate for developers pairing up, but also for programmers working alongside other employees who play a key role in shaping software.

"Pair programming is, in my opinion, the best way to share knowledge around the team, particularly for developers, but not just limited to developers.

"When I worked at LMAX, which is a financial exchange in London, we didn't just do it with developers. We paired every day as developers, but we also paired with business analysts, we paired with technical testers. This way at the beginning of a story, we might sit down with a business analyst and a tester, and the business analyst would tell us, the developer, what we were trying to achieve and why we were trying to do it, and the tester would tell us all the ways they were going to try and break it.

"That way we could try and actually create something which suited the business purposes and that was a quality piece of code."

As well as resulting in a better final product, Gee credits the practice with helping her learn more about being a good Java programmer in her first six months at LMAX than in 10 years during her earlier career, due to working alongside such a mix of people.

"I learned the tools that we were using, the IDEs, for example, JetBrains IntelliJ IDEA, I learned about what our standards were, I learned about the domain, I learned about the trade-offs that we took when we were implementing something," she said, adding "it was a really, really good way to upskill".

The key thing is not to get hung up on the idea that having two developers sharing a keyboard is a bottleneck.

"Typing is not the problem with the coding. It's all about the thinking, and all the bugs that you accidentally write into the code."

However, it's worth noting that evidence for the benefits of pair programming is mixed, with one of the more recent academic studies being unable to identify a clear link with better quality software. That said, the study didn't examine how pair programming improved the skills of individuals.

And other developers who have regularly practiced pair programming add that while the quality of software goes up, in their opinion, so do the stress levels among developers who don't like working in that way, suggesting there should be a limit to how often pairing takes place.

Source: HOB