Collaboration in Open Educational Resources in Africa
Open Educational Resources (OERs) in Africa play a vital role in enhancing skills and fostering innovation among students. Explore the impact of OER adoption in African educational institutions, production workflows, and key issues faced in transforming teaching materials into OERs.
Download Presentation

Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.
E N D
Presentation Transcript
Testing at LinkedIn Sajid Topiwala Staff Software Engineer LinkedIn Test Tools
Agenda Overview of testing at LinkedIn Software Development Life Cycle at LinkedIn Sample of LinkedIn Test Tools
3 BIG BANG
4 Brief History of Testing at LinkedIn Support multiple platforms Flagship introduces 3x3 575,000,000 Pushing for 100% adoption of CI/CD for all of LinkedIn Rewrite of Flagship App Mobile apps launched Test all features Explosion of features and products 300,000,000 Keep the lights on Launch CI/CD Pipeline 225,000,000 LinkedIn goes global All of LinkedIn is in a single DB 125,000,000 17,000,000 100,000 2003 2008 2011 2013 2015 2018
5 LinkedIn CI/CD Pipeline Push Code Develop Review CI Publish Staging Canary Production
linkedin.com android/ios frontend db midtier desktop
linkedin.com Integration with 3rd Party Cloud services Graph Search Replication S8 S9 S1 X-COLO ATC Front Door SA S7 SC Auth/Seurity S2 Online Data Routing API Servers Distributed db android/ios Fizzy Mid Tier Services S3 S6 SB SD SE S4 S5 HADOOP web Service Discovery Schema Registry Kafka Queue ETL Pipeline Zookeeper
8 Testing during Development Push Code Review CI Publish Staging Canary Production Develop
9 QPROD Dev Box Alisa's Foo* Foo* Browser Alisa Production Environment Foo LI Services
10 QPROD Dev Box Service Foo Browser Production Environment Tunnel Portal Tools Environment LI prod services Auth
11 Testing in CI Pipeline Push Code Develop Review Publish Staging Canary Production CI
12 Epsilon Performance testing happens very late in the release cycle Can we make Performance testing part of our CI/CD pipeline
13 Epsilon Record / Replay Framework Records traffic in production Replays earlier in the pipeline Takes advantage of Linkedin s microservice architecture Epsilon core is built into every service at LinkedIn and is activated by turning on a config Security/Privacy of member data is a prominent feature
Epsilon Architecture (Record) Epsilon Recording Store epsilonMode=RECORD Service FOO Downstream Service 1 DS Req 1 DS Resp 1 R1 R1 Downstream Service 2 DS Req 1 DS Resp 1 DS Req 2 DS Req 2 DS Resp 2 DS Resp 2 Runs on regular production node Sample at low QPS Continuous recording / auto-expire
Epsilon Architecture (Replay) epsilonMode=REPLAY Epsilon Recording Store Service FOO DS requests served by Epsilon DS Req 1 DS Resp 1 R1 R1 DS Req 1 DS Resp 1 DS Req 2 DS Req 2 DS Resp 2 DS Resp 2
Epsilon In Action (Capacity Testing) Epsilon Recording Store QPS R1 # returned responses Service FOO V1 R2 R3 Service FOO V2 R4 QPS Ramp up QPS to 2 versions of service and measure response throughput Compare max QPS each version can handle
18 Testing in Canary Push Code Develop Canary Review CI Publish Staging Production
Canary PRODUCTION
20 Testing in Production Push Code Develop Review CI Publish Staging Canary Production
Is a service resilient? https://principlesofchaos.org/
LINKEDOUT Service Foo TIMEOUTS Induced Failure Normal Traffic HIGH LATENCY SERVER ERROR (5xx) RESOURCE NOT FOUND (4xx) Service Bar
What is Working for LinkedIn What we are trying to improve What we have nailed Record/Replay for microservices Canary Analysis Fast release cycles ( 3X3 ) Mobiletesting with real devices Capacity testing Resiliency testing Unit Testing High Code Coverage A/B Testing Standard CI Pipeline Trunk Development
Challenges for LinkedIn What has not worked End-to-End testing Staging Environment Dedicated QA Org
Testing Best Practices Test at all stages of development lifecycle Try to find most defects early in the lifecycle Empower Developers Build tooling and automation Deploy Often Faster defect isolation Ability to fix forward
WE ARE HIRING! careers.linkedin.com
28 Q & A