SlideShare a Scribd company logo
1 of 34
Download to read offline
Dependency
Management
at Scale
October 3, 2020
Roberto Pérez Alcolea
Senior Software Engineer @ Netflix
Productivity Engineering
rperezalcolea@netflix.com
@rpalcolea
DEPENDENCY MANAGEMENT
AT SCALE
•Many repositories (~3k)
•Binary integration (JARs)
•Microservices with fat
clients
•Hundreds of engineers
DEPENDENCY MANAGEMENT
AT SCALE
Context
DEPENDENCY MANAGEMENT
AT SCALE
Builds per week: local + CI
Common problems in
dependency management
Adding or upgrading a
dependency causes:
•NoSuchMethodError
•NoSuchFieldError
•NoClassDefFoundError
•error: cannot find symbol
DEPENDENCY MANAGEMENT
AT SCALE
Unaligned
dependencies
Transitive dependency bumps a
single module but not the whole
family
DEPENDENCY MANAGEMENT
AT SCALE
Picking up
dependencies with
bugs or security
vulnerabilities
DEPENDENCY MANAGEMENT
AT SCALE
DEPENDENCY MANAGEMENT
AT SCALE
Publishers lack
visibility
• Who will I break?
• Who is consuming my library?
• Who is using this API that I want to
change?
DEPENDENCY MANAGEMENT
AT SCALE
Semantic versioning
is not enough
• Which version should I use?
• Pinning versions is technical debt
DEPENDENCY MANAGEMENT
AT SCALE
Java version is not
compatible
What can publishers do to
alleviate pain?
DEPENDENCY MANAGEMENT
AT SCALE
Publish a BOM for
family of modules
•A BOM enables consumers of a
library to select consistent versions
for artifacts included in that library.
•Examples:
‣ jackson-bom
‣ spring-boot-dependencies
•Gradle Java Platform Plugin
•When making a breaking change:
‣If the new library surface is delivered under a new Java package, you
could use a new artifact ID.
‣If the breaking change is made in-place and the Java package is kept
the same, use the same artifact ID.
•Avoid colliding classes (same package/class under multiple artifactId)
DEPENDENCY MANAGEMENT
AT SCALE
Rename artifacts and packages
together
•Do not upgrade JDK version in
your library if you have
consumers in older versions
•Alternatives
‣Multi Release Jars
‣Separate JARs: Variant
awareness with Gradle
More: Multi-release JARs - Good
or bad idea?
DEPENDENCY MANAGEMENT
AT SCALE
Support the minimum Java
version of your consumers
•Shading is a process where a
dependency is relocated to a
different Java package and copied
into the same jar as the code that
relies on that dependency.
DEPENDENCY MANAGEMENT
AT SCALE
Last resource…
shading
Improving consumer
experience with Nebula
This plugin provides general
purpose rule types on top of
Gradle resolution strategies and
module metadata, allowing
rules to be published,
versioned, shared between
projects, and optionally
dependency locked.
•Duplicate classes caused by
changes to group or artifact ids,
without renaming packages
•Duplicate classes caused by
bundle dependencies, which do not
conflict resolve against the 'regular'
dependencies for that library
•Lack of version alignment between
libraries, where version alignment
is needed for compatibility
•Ensuring a minimum version of a
library
Resolution Rules Plugin
DEPENDENCY MANAGEMENT
AT SCALE
Resolution Rules Plugin
https://github.com/rpalcolea/dependency-management-at-scale-jconf-mexico/tree/resolution-rules-usage
https://github.com/nebula-plugins/gradle-resolution-rules-plugin
https://github.com/nebula-plugins/gradle-resolution-rules
DEPENDENCY MANAGEMENT
AT SCALE
Dependency locking
https://github.com/rpalcolea/dependency-management-at-scale-jconf-mexico/tree/dependency-locks
DEPENDENCY MANAGEMENT
AT SCALE
Lint Plugin
https://github.com/rpalcolea/dependency-management-at-scale-jconf-mexico/tree/lint-unused-dependencies
https://github.com/nebula-plugins/gradle-lint-plugin
https://github.com/rpalcolea/dependency-management-at-scale-jconf-mexico/tree/lint-undeclared-dependencies
DEPENDENCY MANAGEMENT
AT SCALE
How do I know who uses
my library?
•Collection of services and UIs
that enable artifact observability
and the ability to effect change
in the Netflix ecosystem.
•High level goal is to decrease
time and effort needed to
propagate change through the
Netflix ecosystem
•Useful for Library deprecation
and Security Vulnerabilities
Astrid
DEPENDENCY MANAGEMENT
AT SCALE
Astrid - Artifact Management
DEPENDENCY MANAGEMENT
AT SCALE
Astrid - Artifact Management
DEPENDENCY MANAGEMENT
AT SCALE
Astrid - Campaigns
DEPENDENCY MANAGEMENT
AT SCALE
What about security
vulnerabilities?
CVE + Astrid +
Nebula
DEPENDENCY MANAGEMENT
AT SCALE
Practical Approach to Automate the Discovery & Eradication of
Open-Source Software Vulnerabilities
Aladdin Almubayed | 2019
What else can we do?
•Distributed Refactoring
•Managed Source: automatic
PRs for dependency locks,
nebula wrapper and lint rules
updates.
What else can we do?
Evolving Continuous Integration at Netflix
(Elise McCallum) | 2019
DEPENDENCY MANAGEMENT
AT SCALE
Something we tried…
•When a new version of a library
is published, build all the
consumers
•Lack of testing in projects didn’t
provide enough confidence for
this model
Publisher Feedback
DEPENDENCY MANAGEMENT
AT SCALE
Gradle Summit - Netflix | Dependencies,
Distributed Code and Engineering Velocity -
Mike McGarr | 2017
Last thoughts…
•Dependency management is
hard
•Dependency hell is inevitable,
let’s try to reduce the pain
•Build often, release often. Avoid
conflict resolution by limiting
version skew
•Producers and consumers play
an important role
DEPENDENCY MANAGEMENT
AT SCALE
Thank

You.
Q&A
rperezalcolea@netflix.com
@rpalcolea
https://github.com/rpalcolea

More Related Content

What's hot

DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro - Database DevOps
 
Why retail companies can't afford database downtime
Why retail companies can't afford database downtimeWhy retail companies can't afford database downtime
Why retail companies can't afford database downtimeDBmaestro - Database DevOps
 
Continuous Delivery & the Database - the Final Frontier
Continuous Delivery & the Database - the Final FrontierContinuous Delivery & the Database - the Final Frontier
Continuous Delivery & the Database - the Final FrontierXebiaLabs
 
Continuous Delivery & the Database- The Final Frontier
Continuous Delivery & the Database- The Final FrontierContinuous Delivery & the Database- The Final Frontier
Continuous Delivery & the Database- The Final FrontierDBmaestro - Database DevOps
 

What's hot (6)

Taking Database Development to the 21st Century
Taking Database Development to the 21st CenturyTaking Database Development to the 21st Century
Taking Database Development to the 21st Century
 
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
 
In (database) automation we trust
In (database) automation we trustIn (database) automation we trust
In (database) automation we trust
 
Why retail companies can't afford database downtime
Why retail companies can't afford database downtimeWhy retail companies can't afford database downtime
Why retail companies can't afford database downtime
 
Continuous Delivery & the Database - the Final Frontier
Continuous Delivery & the Database - the Final FrontierContinuous Delivery & the Database - the Final Frontier
Continuous Delivery & the Database - the Final Frontier
 
Continuous Delivery & the Database- The Final Frontier
Continuous Delivery & the Database- The Final FrontierContinuous Delivery & the Database- The Final Frontier
Continuous Delivery & the Database- The Final Frontier
 

Similar to Dependency Management at Scale

Dependency Management at Scale @ JConf Centroamérica 2020
Dependency Management at Scale @ JConf Centroamérica 2020Dependency Management at Scale @ JConf Centroamérica 2020
Dependency Management at Scale @ JConf Centroamérica 2020Roberto Pérez Alcolea
 
Comparison of Java Web Application Frameworks
Comparison of Java Web Application FrameworksComparison of Java Web Application Frameworks
Comparison of Java Web Application FrameworksAngelin R
 
S/W Design and Modularity using Maven
S/W Design and Modularity using MavenS/W Design and Modularity using Maven
S/W Design and Modularity using MavenScheidt & Bachmann
 
Data consistency: Analyse, understand and decide
Data consistency: Analyse, understand and decideData consistency: Analyse, understand and decide
Data consistency: Analyse, understand and decideLouis Jacomet
 
Escaping Dependency Hell: A deep dive into Gradle's dependency management fea...
Escaping Dependency Hell: A deep dive into Gradle's dependency management fea...Escaping Dependency Hell: A deep dive into Gradle's dependency management fea...
Escaping Dependency Hell: A deep dive into Gradle's dependency management fea...Roberto Pérez Alcolea
 
Decomposing the Monolith using Microservices that don't give you pain
Decomposing the Monolith using Microservices that don't give you painDecomposing the Monolith using Microservices that don't give you pain
Decomposing the Monolith using Microservices that don't give you painDennis Doomen
 
SQL Server DevOps Jumpstart
SQL Server DevOps JumpstartSQL Server DevOps Jumpstart
SQL Server DevOps JumpstartOri Donner
 
Containing your microservice sprawl
Containing your microservice sprawlContaining your microservice sprawl
Containing your microservice sprawlLibbySchulze
 
Decomposing the monolith into embeddable microservices using OWIN, WebHooks, ...
Decomposing the monolith into embeddable microservices using OWIN, WebHooks, ...Decomposing the monolith into embeddable microservices using OWIN, WebHooks, ...
Decomposing the monolith into embeddable microservices using OWIN, WebHooks, ...Dennis Doomen
 
Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015Jelastic Multi-Cloud PaaS
 
Mobile App Architectures & Coding guidelines
Mobile App Architectures & Coding guidelinesMobile App Architectures & Coding guidelines
Mobile App Architectures & Coding guidelinesQamar Abbas
 
A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...
A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...
A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...Docker, Inc.
 
Docker EE 2.0 Choice, Security & Agility
Docker EE 2.0Choice, Security & AgilityDocker EE 2.0Choice, Security & Agility
Docker EE 2.0 Choice, Security & AgilityAshnikbiz
 
Fasten Industry Meeting with GitHub about Dependancy Management
Fasten Industry Meeting with GitHub about Dependancy ManagementFasten Industry Meeting with GitHub about Dependancy Management
Fasten Industry Meeting with GitHub about Dependancy ManagementFasten Project
 
TransitioningToMicroServonDocker_MS
TransitioningToMicroServonDocker_MSTransitioningToMicroServonDocker_MS
TransitioningToMicroServonDocker_MSLana Kalashnyk
 
Microservices with Azure Service Fabric
Microservices with Azure Service FabricMicroservices with Azure Service Fabric
Microservices with Azure Service FabricDavide Benvegnù
 
OpenStack Glance Project Update
OpenStack Glance Project UpdateOpenStack Glance Project Update
OpenStack Glance Project UpdateBrian Rosmaita
 

Similar to Dependency Management at Scale (20)

Dependency Management at Scale @ JConf Centroamérica 2020
Dependency Management at Scale @ JConf Centroamérica 2020Dependency Management at Scale @ JConf Centroamérica 2020
Dependency Management at Scale @ JConf Centroamérica 2020
 
Comparison of Java Web Application Frameworks
Comparison of Java Web Application FrameworksComparison of Java Web Application Frameworks
Comparison of Java Web Application Frameworks
 
Gradle Again
Gradle AgainGradle Again
Gradle Again
 
S/W Design and Modularity using Maven
S/W Design and Modularity using MavenS/W Design and Modularity using Maven
S/W Design and Modularity using Maven
 
Data consistency: Analyse, understand and decide
Data consistency: Analyse, understand and decideData consistency: Analyse, understand and decide
Data consistency: Analyse, understand and decide
 
Escaping Dependency Hell: A deep dive into Gradle's dependency management fea...
Escaping Dependency Hell: A deep dive into Gradle's dependency management fea...Escaping Dependency Hell: A deep dive into Gradle's dependency management fea...
Escaping Dependency Hell: A deep dive into Gradle's dependency management fea...
 
Decomposing the Monolith using Microservices that don't give you pain
Decomposing the Monolith using Microservices that don't give you painDecomposing the Monolith using Microservices that don't give you pain
Decomposing the Monolith using Microservices that don't give you pain
 
Database CI/CD Pipeline
Database CI/CD PipelineDatabase CI/CD Pipeline
Database CI/CD Pipeline
 
SQL Server DevOps Jumpstart
SQL Server DevOps JumpstartSQL Server DevOps Jumpstart
SQL Server DevOps Jumpstart
 
Containing your microservice sprawl
Containing your microservice sprawlContaining your microservice sprawl
Containing your microservice sprawl
 
Decomposing the monolith into embeddable microservices using OWIN, WebHooks, ...
Decomposing the monolith into embeddable microservices using OWIN, WebHooks, ...Decomposing the monolith into embeddable microservices using OWIN, WebHooks, ...
Decomposing the monolith into embeddable microservices using OWIN, WebHooks, ...
 
Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015
 
Mobile App Architectures & Coding guidelines
Mobile App Architectures & Coding guidelinesMobile App Architectures & Coding guidelines
Mobile App Architectures & Coding guidelines
 
A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...
A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...
A Story of Cultural Change: PayPal's 2 Year Journey to 150,000 Containers wit...
 
Docker EE 2.0 Choice, Security & Agility
Docker EE 2.0Choice, Security & AgilityDocker EE 2.0Choice, Security & Agility
Docker EE 2.0 Choice, Security & Agility
 
Fasten Industry Meeting with GitHub about Dependancy Management
Fasten Industry Meeting with GitHub about Dependancy ManagementFasten Industry Meeting with GitHub about Dependancy Management
Fasten Industry Meeting with GitHub about Dependancy Management
 
TransitioningToMicroServonDocker_MS
TransitioningToMicroServonDocker_MSTransitioningToMicroServonDocker_MS
TransitioningToMicroServonDocker_MS
 
Microservices with Azure Service Fabric
Microservices with Azure Service FabricMicroservices with Azure Service Fabric
Microservices with Azure Service Fabric
 
Microservices.pdf
Microservices.pdfMicroservices.pdf
Microservices.pdf
 
OpenStack Glance Project Update
OpenStack Glance Project UpdateOpenStack Glance Project Update
OpenStack Glance Project Update
 

More from Roberto Pérez Alcolea

Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...Roberto Pérez Alcolea
 
DPE Summit - A More Integrated Build and CI to Accelerate Builds at Netflix
DPE Summit - A More Integrated Build and CI to Accelerate Builds at NetflixDPE Summit - A More Integrated Build and CI to Accelerate Builds at Netflix
DPE Summit - A More Integrated Build and CI to Accelerate Builds at NetflixRoberto Pérez Alcolea
 
Dependency Management in a Complex World (JConf Chicago 2022)
Dependency Management in a Complex World (JConf Chicago 2022)Dependency Management in a Complex World (JConf Chicago 2022)
Dependency Management in a Complex World (JConf Chicago 2022)Roberto Pérez Alcolea
 
GR8ConfUS 2018 - High Scalable Streaming Microservices with Kafka Streams
GR8ConfUS 2018 - High Scalable Streaming Microservices with Kafka StreamsGR8ConfUS 2018 - High Scalable Streaming Microservices with Kafka Streams
GR8ConfUS 2018 - High Scalable Streaming Microservices with Kafka StreamsRoberto Pérez Alcolea
 
GR8ConfUS 2018 - High performant in-memory datasets with Netflix H0110W
GR8ConfUS 2018 - High performant in-memory datasets with Netflix H0110WGR8ConfUS 2018 - High performant in-memory datasets with Netflix H0110W
GR8ConfUS 2018 - High performant in-memory datasets with Netflix H0110WRoberto Pérez Alcolea
 
GR8ConfUS 2017 - Real Time Traffic Visualization with Vizceral and Hystrix
GR8ConfUS 2017 - Real Time Traffic Visualization with Vizceral and HystrixGR8ConfUS 2017 - Real Time Traffic Visualization with Vizceral and Hystrix
GR8ConfUS 2017 - Real Time Traffic Visualization with Vizceral and HystrixRoberto Pérez Alcolea
 

More from Roberto Pérez Alcolea (7)

Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
 
DPE Summit - A More Integrated Build and CI to Accelerate Builds at Netflix
DPE Summit - A More Integrated Build and CI to Accelerate Builds at NetflixDPE Summit - A More Integrated Build and CI to Accelerate Builds at Netflix
DPE Summit - A More Integrated Build and CI to Accelerate Builds at Netflix
 
Dependency Management in a Complex World (JConf Chicago 2022)
Dependency Management in a Complex World (JConf Chicago 2022)Dependency Management in a Complex World (JConf Chicago 2022)
Dependency Management in a Complex World (JConf Chicago 2022)
 
GR8ConfUS 2018 - High Scalable Streaming Microservices with Kafka Streams
GR8ConfUS 2018 - High Scalable Streaming Microservices with Kafka StreamsGR8ConfUS 2018 - High Scalable Streaming Microservices with Kafka Streams
GR8ConfUS 2018 - High Scalable Streaming Microservices with Kafka Streams
 
GR8ConfUS 2018 - High performant in-memory datasets with Netflix H0110W
GR8ConfUS 2018 - High performant in-memory datasets with Netflix H0110WGR8ConfUS 2018 - High performant in-memory datasets with Netflix H0110W
GR8ConfUS 2018 - High performant in-memory datasets with Netflix H0110W
 
GR8ConfUS 2017 - Real Time Traffic Visualization with Vizceral and Hystrix
GR8ConfUS 2017 - Real Time Traffic Visualization with Vizceral and HystrixGR8ConfUS 2017 - Real Time Traffic Visualization with Vizceral and Hystrix
GR8ConfUS 2017 - Real Time Traffic Visualization with Vizceral and Hystrix
 

Recently uploaded

The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 

Recently uploaded (20)

The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 

Dependency Management at Scale