LinkedIn: Building with agility for our members in times of need

by Maria Zhang

Reposted from LinkedIn

The needs of our members and customers have evolved rapidly in recent weeks, and we’ve been focused on evolving alongside them to meet their needs to the best of our ability. Recently, we introduced the ability for healthcare and essential organizations that have urgent hiring needs to post jobs for free on LinkedIn, and unlocked free learning paths on LinkedIn Learning to help people navigate the shift to remote work. Both updates were in service of providing our members access to tools and skills to help them navigate these uncertain macroeconomic times.

With talent needs and the way we work changing rapidly, we needed to be agile and develop these two new features in a condensed timeline while maintaining our high standards in areas like security and intuitive design.

While we’re still learning and adapting with each new day, there are several best practices that our engineering teams have embraced to help us rapidly execute these recent offerings.

Leverage where possible

It can be natural to try and tackle a new problem with new tricks, but when time is a critical factor, sometimes the best path forward involves leveraging solutions you’ve already found. Building the workflow that allows companies to post free jobs wasn’t as simple as flipping a switch. It involved making adjustments to the infrastructure used for job postings, creation, billing, and our recommendation systems. Since there is no complete framework already in place to offer free jobs on LinkedIn, the team came up with a solution that would allow us to build and launch within two weeks.

We realized the simplest way to make these critical jobs available faster was to modify our existing billing and relevance systems to allow for a $0 budget for posting a job. Leveraging other existing structures also helped ensure these jobs would have the same anti-abuse heuristic and AI as we use with regular, paid postings.

We also wanted to make sure that the posting workflow for free jobs was easy to understand, as we didn’t have the time to create a new interactive guide. Instead, we used our existing popup and page banner infrastructure, which are normally used for notifications, to provide guidance for members and customers on how to successfully post their free job. We would have preferred to create a more customized support system, but using this existing resource allowed us to put the product in members’ hands more quickly.

Bring together a “tiger team”

Challenging times often bring out the best in us, including a desire to help solve challenges for our teammates, neighbors, and friends. To help tackle these projects, we were fortunate to have employees from several cross-functional teams raise their hands to create a focused tiger team to get these updates built and provided to members quickly.

To guide their work, the tiger team for the free job postings project identified three pillars that would govern their work:

  1. Leverage existing infrastructure where possible;
  2. Create designs that could be quickly implemented;
  3. Maintain a good product experience, as well as a high security and trust standard.

These pillars allowed the team to stay focused and leverage both technical stacks as well as the product design with the emphasis on our top priority, which is trust. They became our true north in terms of the best approaches when building effective solutions quickly. As a fully remote operation, this focused team needed to maintain constant contact using collaboration tools, working together to quickly resolve any blockers. The decision making process, alongside the pillars above, had been fine-tuned to facilitate fast execution.

Embrace “hacks” to accelerate

Craftsmanship is one of our core values as an engineering team, but sometimes, you need to be willing to “hack” a sound solution, even if it is not yet perfected, when prioritizing time to market. Of course, this tradeoff should be treated as an exception, not a rule, in order to avoid accruing technical debt. Our team weighed the amount of time it would take to write new code and build out a scalable platform from scratch alongside our current member needs, and ultimately decided that this approach was warranted under the circumstances. In the case of rolling out free courses on LinkedIn Learning, getting creative about piecemealing together existing code helped us achieve the desired end result on a condensed timeline.

The main challenge facing the LinkedIn Learning team was making the courses accessible for free and blocking the calls to action to subscribe or purchase individual courses that are normally woven into the system for guests (users who are not logged into the platform) and non-paid users. The team quickly evaluated the existing architecture, assessed risks, got buy-in from the right stakeholders, and then implemented a hack that leveraged code from a previous project that would enable us to move quickly in our goal of providing free learning tools to members during this time. This hack consisted of changes that had been deployed to codebases for both logged-in and guest experiences as a way to block upsells from appearing on courses in these learning paths. Using this hack enabled us to optimize for time-to-market, while maintaining our standards for trust, safety, and member experience. The team is now building a tool that would allow content and marketing teams to remove the call to action to subscribe or purchase on unlocked courses in bulk in special circumstances.

Takeaway

The daily changing dynamics around the world right now mean our member’s needs—and how we can best serve them as a platform—are constantly evolving. It has required us to be agile and quickly engineer solutions that would otherwise have taken longer to bring to life while reminding us that in unprecedented times, flexibility, teamwork, and agility are paramount.

Software Daily

Software Daily

 
Subscribe to Software Daily, a curated newsletter featuring the best and newest from the software engineering community.