Internationalizing the World’s Work Marketplace  

Table of Contents

Upwork Global Inc. is an American freelancing platform that connects employers and talents spread across the globe. The company was formed in 2013 after the merger of Elance Inc. and oDesk Corp and subsequently rebranded to Upwork in 2015. By 2017, Upwork had over twelve million registered freelancers and five million registered clients, with more than three million jobs worth over $1 billion posted on their site. In March 2022, Upwork was named to TIME’s List of 100 Most Influential Companies of the Year 2022.  

Upwork Global Inc.

Founded: 2013

Industry: Freelance Marketplace  Headquarters: Santa Clara, CA  Employees: 5,661 (2021)

Revenue: 373.6 million (2020)  Countries: 190

www.upwork.com

The Situation 

As of 2020, the Upwork platform was already being accessed from 130 countries, but all access was in English. To increase market penetration, in 2021, Upwork corporate made a decision to make their freelancing platform available to their users in their local language. 

This decision turned out to be a daunting challenge for development leadership, as the software code had never been internationalized before, and their dev teams were new to internationalization (i18n). As corporate was eager to localize as soon as possible while keeping their feature roadmap intact, Upwork turned to Lingoport for a solution. 

Solutions elements:

  • i18N Gap Analysis
  • i18N Engineering
  • Pseudo-Localization QA
  • i18N Guideline Development  
  • Lingoport Globalyzer
  • Lingoport Localyzer

The Challenge  

As soon as Lingoport got engaged, the assigned i18n discovery team realized how monumental this challenge was. The underlying software codebase was huge; in fact, Upwork had over 100 dev teams, 300 projects, and 100s of repositories. The codebase consisted of legacy code from prior companies, as well as new code that was continually being developed with agile processes. There was also a multitude of technologies used in the code, including Vue, Node, Javascript, Java, PHP, HTML, YAML, and other templating languages, and multiple database repositories not enabled to support localization. 

Furthermore, the dev teams were too busy building new features, which made it difficult to get them to focus on fixing the legacy code and creating i18n-compliant new code. 

“It’s been great working with you, Lingoport. You have taken on a complex situation and paved the way for us. Today we are able  to proceed with our software i18n efforts on our own and are on plan to  start localization for our first set of target locales.”

The Solution  

Lingoport provided a two-phased approach to get the hundreds of teams and repositories fully internationalized: 

Phase 1 consisted of creating a dedicated Lingoport team of i18n architects, developers, and QA resources to spearhead the effort. The dedicated team performed an analysis and ran Globalyzer to get an overall picture of the organization’s i18n gaps. Statistical findings on the number of i18n issues-grouped by type and per repository – led to the selection of three teams’ Git repositories as the focus area for Phase 1. 

Once the initial repositories were selected, it was time to onboard the Lingoport team to work as part of Upwork’s development organization. As the team learned about the customer’s software development processes, they made recommendations on where to include the necessary steps to ensure i18n compliance into Upwork’s CI/CD delivery pipeline. 

Now, Lingoport i18n architects and developers were able to deliver the missing i18n frameworks for the selected repositories and begin i18n refactoring coding work. Lingoport utilized Globalyzer to extract hard-coded strings and refactor the code efficiently. 

Lingoport i18n QA specialist wrote i18n-specific unit tests for the Upwork QA team to utilize for each module delivered. In parallel, Lingoport DB experts analyzed and provided documented i18n remediation design options for Upwork to consider on the one selected database. The jointly selected design changes were implemented and documented so they could be replicated with other databases. The solution also had Lingoport Localyzer integrated with the database to automate sending content to localization and storing translations back into it.

Phase 2 aimed at spreading the i18n know-how to the many Upwork teams. The knowledge gained in Phase 1 was documented in i18n Coding Guidelines, which provided code-level examples of how to refactor source code for Upwork-specific development environments and coding practices. This documentation was coupled with training sessions for Upwork developers and team leads that included both coding best practices, and processes, and using Globalyzer to facilitate the effort. 

As Upwork teams came up to speed and added their muscle to the remaining i18n effort, the Lingoport team’s role shifted to i18n support services as well as setting up Lingoport technologies that Upwork would need to be localization ready. 

Team managers could see the i18n remediation progress via Globalyzer’s dashboards. Shared Slack channels provided an instant connection between the Upwork and Lingoport teams for support responses and advice on questions that came up from Upwork developers. In parallel, Lingoport integrated Localyzer with i18n’ed repos and databases to enable sending of translatable content to localization and perform testing with pseudo-localized or machine-translated content. 

Globalyzer has been at the core of our success. It has helped us with i18n refactoring and provided the visibility we needed to manage the i18n project at the company level.”

Results 

With the two-phased solution, Lingoport spearheaded the i18n effort and then spread the knowledge within Upwork’s vast workforce to complete the remaining repositories. The guidelines provided a standardized solution to be utilized by all engineers, and Lingoport technology provided the efficiencies and visibility within the organization on the i18n effort.  

Having Lingoport spearhead the i18n effort by refactoring a selected set of Upwork repositories made it possible to create the i18n Guidelines specific to Upwork. Having i18n Guideline documents at hand then made it easy for all developers to look at the formulated examples and apply them to the rest of the projects. Globalyzer training sessions empowered developers to ensure i18n compliance as they coded, while expert Globalyzer training sessions provided for i18n leads empowered each team to manage their own settings and optimizations. 

The customized documentation, training sessions, and Slack-based support services guided and spread the i18n best practices knowledge specific to Upwork throughout the organization. The Globalyzer and Localyzer technologies provided automation and QA checks to speed up the localization readiness of Upwork. 

Today Upwork is enabled with the i18n know-how and tools that provide quality, efficiency,  automation, and visibility in their globalization efforts. Each Upwork dev team has been burning down their remaining issues on their own with their i18n-trained workforce. 

As a result, Upwork is on schedule to meet its localization goals for initial global markets and is self-sufficient to manage its globalization from here on. 

“Globalyzer has been at the core of our success and has helped us not only with  i18n refactoring but also provided the visibility we needed to manage the i18n project at the company level.” 

“It’s been great working with you, Lingoport. You have taken on a complex situation and paved the way for us. Today we are able to proceed with our software  i18n efforts on our own and are on plan to start localization for our first set of target locales.” 

Author

Picture of Lingoport
Lingoport
Hand with mobile phone

Talk to Our Experts

Get you tailored consultation on i18n & L10n products and services.

Related Posts

Receive Latest News and Webinar Dates

Get the latest internationalization news delivered to your inbox.