Uncategorized Developer Learning Isn't Just Important, It's Imperative – InfoQ.com
Live Webinar and Q&A: Developing and deploying secure code with AWS Lambda (Jan 20th, 2022) Register Now
Facilitating the spread of knowledge and innovation in professional software development
As ransomware and phishing attacks increase, it is evident that attack vectors can be found on the inside in abundance. Zero Trust Security can be thought of as a new security architecture approach where the main goals are: verifying endpoints before any network communications take place, giving least privilege to endpoints, and continuously evaluating the endpoints throughout the communication.
What is the single best API technology you should always use? Thomas Betts moderated the discussion, with the goal to understand some of the high-level features and capabilities of three popular technologies for implementing APIs. The discussion covers some of the pros and cons of GraphQL and gRPC, and why you might use them instead of a RESTful API.
In this article, author Juan Pan discusses the data sharding architecture patterns in a distributed database system. She explains how Apache ShardingSphere project solves the data sharding challenges. Also discussed are two practical examples of how to create a distributed database and an encrypted table with DistSQL.
Psychological safety is a work climate where employees feel free to express their questions, concerns, ideas and mistakes. We cannot have high-performing teams without psychological safety. In this article, you will learn practical ideas, interesting stories, and powerful approaches to boost psychological safety in your team.
At QCon Plus, Mathias Schwarz, a software engineer at Uber, presented safe and fast deploys at planet scale. Uber is a big business and has several different products. They are, in most cases, deployed to dozens or hundreds of markets all over the world.
How do traditional security approaches scale in Cloud Native architectures? Register Now!
Learn from practitioners driving innovation and change in software. Attend in-person on April 4-6, 2022.
Uncover emerging trends and practices from software leaders. Attend online on May 10-20, 2022.
Your monthly guide to all the topics, technologies and techniques that every professional needs to know about. Subscribe for free.
InfoQ Homepage Articles Developer Learning Isn’t Just Important, It’s Imperative
Oct 19, 2021 11 min read
by
reviewed by
I often think about my journey to become a developer—and how different that journey may look for the millions of people pursuing their career goals in software development every day.
My curiosity for computers, games, and technological hardware nurtured my career path as an aspiring developer, but that was only the first step. While I became employable through the culmination of my learnings, I quickly realized that developer learning was a career-long journey.
I learned first-hand—sometimes the hard way—that to stay on the cutting edge, developers need to upskill continuously.
Developer Workshop: Module 2 – CI/CD Pipelines.
Join experts to learn how to implement well-engineered CI/CD pipelines that consider governance and traceability from idea to production. Watch Now!
Every week brings new languages and frameworks that make previous skills less relevant. This blistering pace has only intensified in our increasingly cloud-focused world. If developers aren’t constantly learning, simply put, they don’t have a career.
That’s why I became passionate about developer learning. It isn’t just important to a successful career in software development; it’s imperative.
Developer learning has traditionally depended on books and videos. But as growth-minded developers ourselves, my Educative co-founder Naeem and I found books too dry and theoretical, and videos too passive and superficial.
Like learning how to swim or skateboard, Naeem and I understood that you can’t meaningfully improve your coding skills just by watching YouTube videos. You have to actually get your hands dirty and code. You need to make mistakes along the way and learn from them.
Given the state of developer training platforms at the time, we found ourselves forced to scour dense books and documentation. The only other option was video, which unfortunately required tedious installations and inefficient scrubbing in order to accomplish any meaningful learning. These inefficiencies transformed learning from a thrilling opportunity into a demoralizing slog.
Quite simply, developer learning needs fewer roadblocks.
Developers shouldn’t have to worry about installation steps, or switching back and forth between multiple platforms. Naeem and I started asking ourselves an important question: how can we make developer learning more streamlined?
That’s how we came up with the idea for Educative. Our desire for a more streamlined learning experience was our springboard. And for developers like us, we dove in to build a solution.
Learning new technical skills and non-technical skills provides a foundation for developers to progress in their careers. Even the broader topics of study are changing for developers. 5-10 years ago, new programming languages and frameworks were the main focus; now we’re seeing a shift towards learning APIs, security, and compliance.
Developers need to keep themselves updated constantly. Surveys conducted by Stack Overflow found that 75% of developers learn something new within a year. They also found that more than 50% of developers learn something new every few months.
In my experience, the highest performing developers spend even more time actively learning than that.
Considering that developers are continually obligated to learn, time spent learning is of utmost importance. I often represent the variable of time spent learning through a simple equation:
Frequency of learning x Hurdles to learning = Time consumption
In this equation, the hurdles to learning are just as important to the output as the frequency of learning. That’s why it’s essential for developers to have a learning environment that minimizes hurdles, hassles, distractions, and inefficiencies.
Learning should be personalized.
Every developer’s learning path should consider these three variables:
To this end, I always see the same few shortcomings whenever I look at videos; coverage of most topics is only superficial, the content isn’t personalized or customizable, and learners waste valuable time scrubbing for relevant info.
I get so excited about customizable learning paths can act as the glue that fills in the gaps of more traditional media. This way developers can learn at their own pace, on a program that is tailored to their specific needs.
Every company that isn’t consistently upgrading its codebase or shifting to new frameworks is facing a serious business problem.
If your codebase is getting older and older, you face the risk of massive future migrations. And if you’re not moving to new framework versions, you’re missing important benefits that your team could otherwise leverage.
Technical debt naturally increases over time. The longer it goes unaddressed, the sooner you’ll get stuck paying high costs in migration, hiring, or massive upskilling efforts that take weeks or months. Like saving for retirement, incremental upskilling pays dividends in the long run.
Every industry leader I’ve talked to worries about the scarcity of high-quality software engineers. That means companies feel serious pressure to constantly hire new, better developers. But rather than looking externally for a solution, what if companies looked internally?
Here’s the reality: meaningful developer learning helps companies convert silver medalists into gold medalists.
What if we shifted the mentality around developer hiring to emphasize bringing on coachable people with small skill gaps? If your company has well-defined developer learning paths in place, the whole world opens up; your company can now dip its toes into new pools of talent that were previously off-limits.
In a competitive world and ever-shifting tech landscape where exceptional developers are a rare commodity, you have to ‘think outside the box.’ Hire intelligent and coachable people with a strong foundation, and methodically fill in skill gaps via new developer learning tools.
Bootcamps are a hot commodity for aspiring developers. Companies often hire bootcamp graduates not just because they have a baseline of employable skills, but because they demonstrate ingenuity and tenacity. But in all honesty, these new grads often have glaring skill gaps that still need to be addressed. You hired them as junior developers, but you want them to grow. For engineers of any level—but especially for junior developers—learning resources fill in critical skill gaps they need to progress in their careers.
If your company lacks learning resources, you are simply not setting your junior developers up for success. Skill gaps will eventually limit their growth in your company, which may push them to look elsewhere. If your company doesn’t develop and promote junior engineers, the result is a culture of low morale and even lower retention.
Developers want to feel fulfilled in their careers. They will join and stay at companies that invest in them and provide them with resources to grow.
Throughout the pandemic, everyone has gotten quite a bit better at washing their hands and wearing masks in public. Prevention is sometimes the best medicine.
Among tech industry leaders, I often hear the same two complaints come up over and over again: recruiting is difficult and retention is difficult. Companies must help developers advance in their careers. This means helping them learn new tech industry standards, as well as non-technical skills.
We’re getting better at shipping code with fewer bugs every day, but now more than ever we also need developers who can write code that is safe and secure. Between GDPR and new legislation in California, compliance is becoming more critical every day.
For example, suppose a developer accidentally puts a password in a log file for debugging purposes, and that code ships to the public. That small slip could cause a massive security disaster with countless business implications. Similarly, your developer can unknowingly mishandle Personally Identifiable Information (PII), inadvertently incurring huge fines from unions. In short, helping your developers learn helps your company prevent future disasters.
As a useful tip, ask yourself this question: how do I provide my engineers with the right resources to ship out high-quality products that are also compliant and secure?
A decade ago, the most important things for developers to learn were new programming languages and frameworks. Nowadays, our increasingly cloud-oriented world brings with it a whole new set of challenges.
Many newer applications are built by stitching APIs. For example, if you’re building Uber, you’re leveraging Google Maps for directions and mapping, Twilio for text messages, Auth0 for authentication, and Stripe for processing payments. Using APIs to stitch an application together via various technical frameworks multiplies the complexity of development significantly.
What does this mean from a developer learning standpoint? Mostly, it means that things have gotten a lot more complicated.
Developers are faced with new standards of learning because applications are no longer siloed. Instead of upgrading new frameworks every six months, now they’re needing to leverage new APIs every couple of weeks.
We need developers who are willing and eager to constantly upskill in this new normal—and we need the right learning resources in place to support them.
Learning to code is more accessible today than it was 10-15 years ago. Launching a career as a developer typically used to require formal education. Now with the advent of high-quality, affordable learning platforms, (and broader access to technology), the traditional gatekeepers are becoming less and less important by the day.
Better and more efficient learning resources help solve the problem of deficient software developers.
Thanks to a great new crop of well-designed learning resources, it is easier than ever for developers to fill holes in their knowledge. As a result, companies are able to connect with more diverse and qualified candidates than ever before.
The diversification of software developers is impacting the next generation of consumers.
It can be easy to lose this perspective in the developed world, but most software engineers are still building for the early adopters of mobile technology. The reality is that more than half of the world’s population—four to five billion people—still lack access to this technology so many already take for granted.
As we develop into the future, building new products for an array of new customers with differing needs and priorities, we’ll start to see massive innovation in localized spheres as access to technology increases globally over time.
The technological resources to support deep, efficient developer learning are already here. But we still need to see a shift in perspective from our engineering leaders in order to fully enjoy their benefits.
The consequences of developer skill gaps will continue to bite back every year, every quarter even, unless tech leadership starts investing seriously in filling those gaps today.
Fortunately, this necessary mind shift will begin to take root as more tech leaders establish thriving cultures of growth, constant learning, and support.
Culture of Growth
If the leaders focus on growing developers, developers will focus on growing the company.
Culture of Constant Learning
Constant learning supports developers’ careers, while preventing sudden company and industry-level overhauls stemming from antiquated technologies and systems.
Culture of Support
Developers don’t merely need learning resources in order to grow—they need institutional support to encourage deeper, more focused learning. Companies can and should cultivate this culture of support.
For tech leaders, there are two key metrics to look at as leading indicators of developer learning:
Leaders can also look at the number of engineers moving to different levels within the organization, as well as the number of employees from underrepresented communities and the promotions they receive.
If you’re an employer that is actively trying to upskill your engineering team, developers will stick around. Roles will feel more fulfilling and growth paths are well-defined. Employees invest in companies that invest in their employees.
Former Microsoft CEO Steve Ballmer became something of an Internet meme thanks to his speech at the Microsoft Developers Conference in 2000. The image of a sweaty, middle-aged executive in a button-down shirt repeatedly chanting "developers, developers, developers" is both humorous and iconic. But that moment is pulled from a speech that emphasized an essential truth: the future of Microsoft, and the future of business, was built around supporting and empowering developers.
While largely criticized during his tenure for Microsoft's foundering stock price, that relentless focus on developers, along with a few business initiatives, laid the foundation for Microsoft to become one of only two companies with a market capitalization over $2 trillion today.
It is exciting now to see the explosion in learning resources as other companies learn that same focus. This trend is deeply validating to me and Naeem; it is why we got into this world in the first place. Giving developers the tools they need to learn skills and grow their career is a business imperative. Empowering software engineers to share their knowledge across the organization creates redundancies for existing products, and prepares your business for the next step as digital transformation takes even deeper hold across all sectors of the economy. It really is about developers, developers, developers – and it's why we at Educative are relentlessly focused on helping developers be and become better engineers.
We welcome you to join us.
Happy learning!Fahim ul Haq is a software engineer and business leader with a relentless passion for finding better, more efficient ways for developers to master in-demand skills. This pursuit led him to create Educative, the world’s leading upskilling platform for and by developers.
A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers. View an example
We protect your privacy.
You need to Register an InfoQ account or Login or login to post comments. But there’s so much more behind being registered.
Get the most out of the InfoQ experience.
Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p
Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p
Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p
A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers. View an example
We protect your privacy.
QCon, the international software development conference, is returning (in-person and online) in 2022.
QCon brings together the world’s most innovative senior software engineers across multiple domains to share their real-world implementation of emerging trends and practices.
Find practical inspiration (not product pitches) from software leaders deep in the trenches creating software, scaling architectures and fine-tuning their technical leadership to help you make the right decisions. Save your spot now!
InfoQ.com and all content copyright © 2006-2022 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we’ve ever worked with.
Privacy Notice, Terms And Conditions, Cookie Policy