SlideShare a Scribd company logo
1
© 2016 Express Scripts Holding Company. All Rights Reserved.
Journey to Establish an Open Source
Policy in a Fortune 20 Health Care
CompanyDamian Ng
Head of Platform Architecture and Technology
All Things Open 2017
2
© 2016 Express Scripts Holding Company. All Rights Reserved.
About me
• Distinguished Architect, Head of Platform Architecture and
Technology at Express Scripts (ESI)
• Leading platform strategy, target state architecture and technology
innovation
• Open Source Evangelist of ESI
• Chief Company Pick up Soccer Organizer
• Just help built the first company legal policy
with in house counsel
www.linkedin.com/in/ngdamian/
dng@express-scripts.com
3
© 2016 Express Scripts Holding Company. All Rights Reserved.
What to Expect Today?
4
© 2016 Express Scripts Holding Company. All Rights Reserved.
Background
• ESI had a heavy focus on outsourcing.
• ESI has contractual agreements with vendors to cover software
rights.
• If developers needed to ingest, ESI handled it ad hoc.
• Generally no company open source contributions.
• No glaring need for an Open Source Policy.
• Major technology transformation in 2016 re-focused ESI on
innovation and leveraged open source technology as one of the
key avenues to do so.
5
© 2016 Express Scripts Holding Company. All Rights Reserved.
How did we start?
• Headaches
• So many licenses!
• Legal knowledge of OSS is scarce
• Huge knowledge gap between understanding Open Source and
designing an Open Source policy for a Fortune 100 company
• Same license has various implications in different use cases
• Avoid building a huge legal team to support the process
• Our Priorities
No Policy
Ingestion
Contribution
Less urgent,
more
complex
6
© 2016 Express Scripts Holding Company. All Rights Reserved.
Ingestion Policy
7
© 2016 Express Scripts Holding Company. All Rights Reserved.
What do our developers care?
Where
to
Explore?
Legal
Risk?
Good
Idea?
Software
Safe?
8
© 2016 Express Scripts Holding Company. All Rights Reserved.
Objectives of ESI Ingestion Policy
Encourage
Exploration
Review on
High Risk
Areas
100%
Compliance
vs.
Practicality
Self-Govern
9
© 2016 Express Scripts Holding Company. All Rights Reserved.
Step #1: Develop Ingestion Matrix
• Build a Legal Review Ingestion Matrix for internal OSS
Ingestion
• Handle 8 common consumption scenarios
• Cover top 11 licenses
• Auto-approve most scenarios without further legal
review
• Everything else reviewed manually
• Experimentation is automatically green-lighted.
• No written approval is needed for all the green light
scenarios, but record for tracking purposes.
• Focus on fixing continued ingestion and new use
cases.
✔
10
© 2016 Express Scripts Holding Company. All Rights Reserved.
License/Use Case Coverage
• Licenses:
• Apache 2.0
• BSD 2
• BSD 3
• CDDL
• Eclipse 1.0
• GPL 2.0
• GPL 3.0
• LGPL 2.1
• LGPL 3.0
• MIT
• MPL 2.0
• Use Cases
• Experimental Testing
• Code/Library that runs on a
production server.
• Code/Library that is
distributed to users as a
product
• Websites where code
executes on client side
• Infrastructure
• Internal Use End User Tool
• Build Tool which incorporate
code
11
© 2016 Express Scripts Holding Company. All Rights Reserved.
ESI Open Source Ingestion Matrix
Proposed Consumption based on Identified Scenarios
Open Source
Licenses
Experimentaion
Testing Scenario #2 Scenario #3 Scenario #4 Scenario #5 Scenario #6 Scenario #7 Scenario #8
License #1
License #2
License #3
License #4
License #5
License #6
License #7
License #8
License #9
License #10
License #11
All Other Licenses
Green Legal/patent has deemed license and proposed consumption is a low risk; no legal/patent review required.
Yellow
Legal/patent has deemed license and proposed consumption is a medium risk; legal/patent review required to
determine whether: (i) there is no issue, (ii) there is an issue that can be mitigated, or (iii) there is a significant
concern that must be addressed.
Red
Legal/patent has deemed license and proposed consumption is a high risk; legal/patent review required to
determine whether: (i) there is an issue that can be mitigated, or (ii) there is a significant concern that must be
addressed.
12
© 2016 Express Scripts Holding Company. All Rights Reserved.
Lesson Learned: Ingestion Matrix
• Surprisingly, most of our ingestion scenarios are “green”
• Native mobile applications causes the most “red”
• It falls almost directly into “distribution” scenario
• Build tools for mobile applications insert code via static linking
• Dependency management and libraries are not your friend
• Need to look up license information for dependencies
• AGPL is definitely not your friend
• Rely on your engineers to provide feedback and updates on
product licenses.
Legally Approved Good Technical Idea
or
Secure Software
13
© 2016 Express Scripts Holding Company. All Rights Reserved.
Step #2: Process Flows for “everything
else”
• Surprise !! Developers downloading software is one of many
scenarios bringing in Open Source Software into the organization!
• Other Common Scenarios
• Off the Shelf Software
• Vendor Custom Software Development
• Vendor Built Software with Custom Development
• SaaS/Cloud Software
• Vendor/Contractor Developer Usage
• Change of legal position to share Open Source Software liability
with vendors.
14
© 2016 Express Scripts Holding Company. All Rights Reserved.
Sample Process Flow Diagram
15
© 2016 Express Scripts Holding Company. All Rights Reserved.
Lesson Learned: Process Flows
• More non-developer ingestion when policy first
rolled out.
• Dependency management and libraries are not
your friend, again.
• But this time vendors/partners need to provide all
the information.
• Spend time to diagram the process flows help
explain concepts a lot easier.
• Socialize the process with
sourcing/procurement!!
• Take a lot longer to roll out the programs/flows
than we anticipated
16
© 2016 Express Scripts Holding Company. All Rights Reserved.
Contribution Policy
17
© 2016 Express Scripts Holding Company. All Rights Reserved.
Objectives
Contribute
Personal
code
without
Approval
Visibility and
Approval of
ESI Code
Contribution
Simplify
Process to
Contribute
post initial
approval
Minimize Risk
of
unintentionally
licensing
patents
18
© 2016 Express Scripts Holding Company. All Rights Reserved.
What do our developers care?
I wrote some
code while
employed by
ESI, can I
contribute?
What’s the
process?
Need a
contribution
policy!
19
© 2016 Express Scripts Holding Company. All Rights Reserved.
Common Mis-conceptions
The
code is
mine!
If I write my
code in non-
company
time
If I write my
code in my
personal
laptop
If the code is
not related to
my company
business
It’s MINE !!!
20
© 2016 Express Scripts Holding Company. All Rights Reserved.
Step #1: Who has the right of what?
• We reviewed existing ESI IP assignment agreement signed by
employees:
• What does the company own (e.g. business IP, personal IP, etc.)?
• What do employees own?
• What’s the review process to determine rights?
• Discovered gap that did not allow for open source contribution and
modify the IP assignment agreement.
Needed to first modify the IP
assignment agreement before
launching the contribution policy.
The IP agreement must be first
signed by employees before
executing the policy!!
21
© 2016 Express Scripts Holding Company. All Rights Reserved.
Step #2: Clear Explanation of IP
Ownership• What code do I write?
• Your code IS Company IP if it is ESI business
related.
• Where do I write/store the code?
• Company or personal laptop is NOT a factor on
whether the code is Company IP.
• When do I write the code?
• Company or personal time is NOT a factor on
whether the code is Company IP.
• Code I owned before joining the company?
• That’s all yours.
• Code I owned before joining the Company but
continue to develop while at the Company?
• Code before joining the company is all yours.
• Business related code after joining the company is
Company IP; personal code is all yours.
Prepare this
for your
technology
team !
22
© 2016 Express Scripts Holding Company. All Rights Reserved.
Step #3 Contributing
• Request legal approval for contribution
• Legal review for the following:
• Proprietary nature of code and competitive risk of
contribution
• Business Proprietary vs. common utilities
• New project vs. bug fix
• Estimated LOC
• Upon written approval to contribute, ESI developer can start
contributing project code to Open Source.
• Re-evaluate every 6 months; or based on VP approval
• Open Source license is irrelevant
• Minimize company references
• Personal email vs. Company email
23
© 2016 Express Scripts Holding Company. All Rights Reserved.
Lesson Learned: Contribution Policy
• Our IP assignment did not cover Open Source contribution; take
time to adjust it before the policy can be rolled out.
• Try to roll out the policy to align with re-signing of the IP agreement!
• Legal review is required more frequently than anticipated.
Developers and even management often have no visibility on
potential M&A activities.
• Referencing the company during contribution could be tricky; check
with your legal/communication teams.
• Treat company contribution as an edge case.
• Do not attempt to review the actual code.
• Build simplified version of explanation instead of only using legal
documents.
• No silver bullet templates to be leveraged.
24
© 2016 Express Scripts Holding Company. All Rights Reserved.
Thank You !

More Related Content

What's hot

Take Control: Design a Complete DevSecOps Program
Take Control: Design a Complete DevSecOps ProgramTake Control: Design a Complete DevSecOps Program
Take Control: Design a Complete DevSecOps Program
Deborah Schalm
 
The Coming OSS Sustainability Crisis
The Coming OSS Sustainability CrisisThe Coming OSS Sustainability Crisis
The Coming OSS Sustainability Crisis
Aaron Stannard
 
Best Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for CompaniesBest Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for Companies
All Things Open
 
The Many Faces of PaaS
The Many Faces of PaaSThe Many Faces of PaaS
The Many Faces of PaaS
Mike Kavis
 
Making Security Agile - Oleg Gryb
Making Security Agile - Oleg GrybMaking Security Agile - Oleg Gryb
Making Security Agile - Oleg Gryb
SeniorStoryteller
 
A New View of Your Application Security Program with Snyk and ThreadFix
A New View of Your Application Security Program with Snyk and ThreadFixA New View of Your Application Security Program with Snyk and ThreadFix
A New View of Your Application Security Program with Snyk and ThreadFix
Denim Group
 
A Day in the Life of a Cross-platform, DevOps-enabled Team
A Day in the Life of a Cross-platform, DevOps-enabled TeamA Day in the Life of a Cross-platform, DevOps-enabled Team
A Day in the Life of a Cross-platform, DevOps-enabled Team
Deborah Schalm
 
Security as Code
Security as CodeSecurity as Code
Security as Code
Ed Bellis
 
Software Supply Chain Automation Removes Roadblocks to Rugged DevOps
Software Supply Chain Automation Removes Roadblocks to Rugged DevOpsSoftware Supply Chain Automation Removes Roadblocks to Rugged DevOps
Software Supply Chain Automation Removes Roadblocks to Rugged DevOps
SeniorStoryteller
 
10 Myth of DevSecOps
10 Myth of DevSecOps10 Myth of DevSecOps
10 Myth of DevSecOps
DevOps Indonesia
 
The Challenges of Scaling DevSecOps
The Challenges of Scaling DevSecOpsThe Challenges of Scaling DevSecOps
The Challenges of Scaling DevSecOps
WhiteSource
 
Devops: Security's big opportunity by Peter Chestna
Devops: Security's big opportunity by Peter ChestnaDevops: Security's big opportunity by Peter Chestna
Devops: Security's big opportunity by Peter Chestna
DevSecCon
 
The Growing Research that Open Source Owns the Future in Cloud
The Growing Research that Open Source Owns the Future in CloudThe Growing Research that Open Source Owns the Future in Cloud
The Growing Research that Open Source Owns the Future in Cloud
All Things Open
 
Shift Left Security - The What, Why and How
Shift Left Security - The What, Why and HowShift Left Security - The What, Why and How
Shift Left Security - The What, Why and How
DevOps.com
 
The State of DevSecOps
The State of DevSecOpsThe State of DevSecOps
The State of DevSecOps
DevOps Indonesia
 
Release Your Inner DevSecOp
Release Your Inner DevSecOpRelease Your Inner DevSecOp
Release Your Inner DevSecOp
James Wickett
 
Ongoing management of your PHP 7 application
Ongoing management of your PHP 7 applicationOngoing management of your PHP 7 application
Ongoing management of your PHP 7 application
Zend by Rogue Wave Software
 
2016 State of DevOps Report Webinar
2016 State of DevOps Report Webinar2016 State of DevOps Report Webinar
2016 State of DevOps Report Webinar
Puppet
 
cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton
cdSummit Austin - Orchestrating the continuous delivery process - Andy PembertoncdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton
cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton
Miles Blatstein
 
Application Security Testing for a DevOps Mindset
Application Security Testing for a DevOps Mindset  Application Security Testing for a DevOps Mindset
Application Security Testing for a DevOps Mindset
Denim Group
 

What's hot (20)

Take Control: Design a Complete DevSecOps Program
Take Control: Design a Complete DevSecOps ProgramTake Control: Design a Complete DevSecOps Program
Take Control: Design a Complete DevSecOps Program
 
The Coming OSS Sustainability Crisis
The Coming OSS Sustainability CrisisThe Coming OSS Sustainability Crisis
The Coming OSS Sustainability Crisis
 
Best Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for CompaniesBest Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for Companies
 
The Many Faces of PaaS
The Many Faces of PaaSThe Many Faces of PaaS
The Many Faces of PaaS
 
Making Security Agile - Oleg Gryb
Making Security Agile - Oleg GrybMaking Security Agile - Oleg Gryb
Making Security Agile - Oleg Gryb
 
A New View of Your Application Security Program with Snyk and ThreadFix
A New View of Your Application Security Program with Snyk and ThreadFixA New View of Your Application Security Program with Snyk and ThreadFix
A New View of Your Application Security Program with Snyk and ThreadFix
 
A Day in the Life of a Cross-platform, DevOps-enabled Team
A Day in the Life of a Cross-platform, DevOps-enabled TeamA Day in the Life of a Cross-platform, DevOps-enabled Team
A Day in the Life of a Cross-platform, DevOps-enabled Team
 
Security as Code
Security as CodeSecurity as Code
Security as Code
 
Software Supply Chain Automation Removes Roadblocks to Rugged DevOps
Software Supply Chain Automation Removes Roadblocks to Rugged DevOpsSoftware Supply Chain Automation Removes Roadblocks to Rugged DevOps
Software Supply Chain Automation Removes Roadblocks to Rugged DevOps
 
10 Myth of DevSecOps
10 Myth of DevSecOps10 Myth of DevSecOps
10 Myth of DevSecOps
 
The Challenges of Scaling DevSecOps
The Challenges of Scaling DevSecOpsThe Challenges of Scaling DevSecOps
The Challenges of Scaling DevSecOps
 
Devops: Security's big opportunity by Peter Chestna
Devops: Security's big opportunity by Peter ChestnaDevops: Security's big opportunity by Peter Chestna
Devops: Security's big opportunity by Peter Chestna
 
The Growing Research that Open Source Owns the Future in Cloud
The Growing Research that Open Source Owns the Future in CloudThe Growing Research that Open Source Owns the Future in Cloud
The Growing Research that Open Source Owns the Future in Cloud
 
Shift Left Security - The What, Why and How
Shift Left Security - The What, Why and HowShift Left Security - The What, Why and How
Shift Left Security - The What, Why and How
 
The State of DevSecOps
The State of DevSecOpsThe State of DevSecOps
The State of DevSecOps
 
Release Your Inner DevSecOp
Release Your Inner DevSecOpRelease Your Inner DevSecOp
Release Your Inner DevSecOp
 
Ongoing management of your PHP 7 application
Ongoing management of your PHP 7 applicationOngoing management of your PHP 7 application
Ongoing management of your PHP 7 application
 
2016 State of DevOps Report Webinar
2016 State of DevOps Report Webinar2016 State of DevOps Report Webinar
2016 State of DevOps Report Webinar
 
cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton
cdSummit Austin - Orchestrating the continuous delivery process - Andy PembertoncdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton
cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton
 
Application Security Testing for a DevOps Mindset
Application Security Testing for a DevOps Mindset  Application Security Testing for a DevOps Mindset
Application Security Testing for a DevOps Mindset
 

Similar to Journey to Establish an Open Source Policy in a Fortune 20 Health Care Company

Related OSS Projects - Peter Rowe, Flexera Software
Related OSS Projects - Peter Rowe, Flexera SoftwareRelated OSS Projects - Peter Rowe, Flexera Software
Related OSS Projects - Peter Rowe, Flexera Software
OpenStack
 
Webinar–You've Got Your Open Source Audit Report–Now What?
Webinar–You've Got Your Open Source Audit Report–Now What? Webinar–You've Got Your Open Source Audit Report–Now What?
Webinar–You've Got Your Open Source Audit Report–Now What?
Synopsys Software Integrity Group
 
Breaking Free from Proprietary Gravitational Pull
Breaking Free from Proprietary Gravitational PullBreaking Free from Proprietary Gravitational Pull
Breaking Free from Proprietary Gravitational Pull
Great Wide Open
 
Flight East 2018 Presentation–You've got your open source audit report, now w...
Flight East 2018 Presentation–You've got your open source audit report, now w...Flight East 2018 Presentation–You've got your open source audit report, now w...
Flight East 2018 Presentation–You've got your open source audit report, now w...
Synopsys Software Integrity Group
 
OSS has taken over the enterprise: The top five OSS trends of 2015
OSS has taken over the enterprise: The top five OSS trends of 2015OSS has taken over the enterprise: The top five OSS trends of 2015
OSS has taken over the enterprise: The top five OSS trends of 2015
Rogue Wave Software
 
Identifying and managing the risks of open source software for PHP developers
Identifying and managing the risks of open source software for PHP developersIdentifying and managing the risks of open source software for PHP developers
Identifying and managing the risks of open source software for PHP developers
Rogue Wave Software
 
Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016
Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016
Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016
Mindtrek
 
Webinar–Why All Open Source Scans Aren't Created Equal
Webinar–Why All Open Source Scans Aren't Created EqualWebinar–Why All Open Source Scans Aren't Created Equal
Webinar–Why All Open Source Scans Aren't Created Equal
Synopsys Software Integrity Group
 
#OSSPARIS19 - Understanding Open Source Governance - Gilles Gravier, Wipro Li...
#OSSPARIS19 - Understanding Open Source Governance - Gilles Gravier, Wipro Li...#OSSPARIS19 - Understanding Open Source Governance - Gilles Gravier, Wipro Li...
#OSSPARIS19 - Understanding Open Source Governance - Gilles Gravier, Wipro Li...
Paris Open Source Summit
 
Open Source Outlook: Expected Developments for 2016
Open Source Outlook: Expected Developments for 2016Open Source Outlook: Expected Developments for 2016
Open Source Outlook: Expected Developments for 2016
Black Duck by Synopsys
 
How to Keep Developers Happy and Lawyers Calm
How to Keep Developers Happy and Lawyers CalmHow to Keep Developers Happy and Lawyers Calm
How to Keep Developers Happy and Lawyers Calm
All Things Open
 
Managing the Software Supply Chain: Policies that Promote Innovation While Op...
Managing the Software Supply Chain: Policies that Promote Innovation While Op...Managing the Software Supply Chain: Policies that Promote Innovation While Op...
Managing the Software Supply Chain: Policies that Promote Innovation While Op...
FINOS
 
How enterprises learned to stop worrying and love open source
How enterprises learned to stop worrying and love open sourceHow enterprises learned to stop worrying and love open source
How enterprises learned to stop worrying and love open source
Rogue Wave Software
 
Rise of the Open Source Program Office for LinuxCon 2016
Rise of the Open Source Program Office for LinuxCon 2016Rise of the Open Source Program Office for LinuxCon 2016
Rise of the Open Source Program Office for LinuxCon 2016
Gil Yehuda
 
How can large open source projects be monetized?
How can large open source projects be monetized?How can large open source projects be monetized?
How can large open source projects be monetized?
Bruno Lowagie
 
Monetizing open-source projects
Monetizing open-source projectsMonetizing open-source projects
Monetizing open-source projects
iText Group nv
 
5 strategies for enterprise cloud infrastructure success
5 strategies for enterprise cloud infrastructure success5 strategies for enterprise cloud infrastructure success
5 strategies for enterprise cloud infrastructure success
Rogue Wave Software
 
Selecting an Open Source License and Business Model for Your Project to Have ...
Selecting an Open Source License and Business Model for Your Project to Have ...Selecting an Open Source License and Business Model for Your Project to Have ...
Selecting an Open Source License and Business Model for Your Project to Have ...
All Things Open
 
Open Source Software: What Are Your Obligations?
Open Source Software: What Are Your Obligations? Open Source Software: What Are Your Obligations?
Open Source Software: What Are Your Obligations?
Source Code Control Limited
 
Webinar-DevOps.pdf
Webinar-DevOps.pdfWebinar-DevOps.pdf
Webinar-DevOps.pdf
Amazon Web Services
 

Similar to Journey to Establish an Open Source Policy in a Fortune 20 Health Care Company (20)

Related OSS Projects - Peter Rowe, Flexera Software
Related OSS Projects - Peter Rowe, Flexera SoftwareRelated OSS Projects - Peter Rowe, Flexera Software
Related OSS Projects - Peter Rowe, Flexera Software
 
Webinar–You've Got Your Open Source Audit Report–Now What?
Webinar–You've Got Your Open Source Audit Report–Now What? Webinar–You've Got Your Open Source Audit Report–Now What?
Webinar–You've Got Your Open Source Audit Report–Now What?
 
Breaking Free from Proprietary Gravitational Pull
Breaking Free from Proprietary Gravitational PullBreaking Free from Proprietary Gravitational Pull
Breaking Free from Proprietary Gravitational Pull
 
Flight East 2018 Presentation–You've got your open source audit report, now w...
Flight East 2018 Presentation–You've got your open source audit report, now w...Flight East 2018 Presentation–You've got your open source audit report, now w...
Flight East 2018 Presentation–You've got your open source audit report, now w...
 
OSS has taken over the enterprise: The top five OSS trends of 2015
OSS has taken over the enterprise: The top five OSS trends of 2015OSS has taken over the enterprise: The top five OSS trends of 2015
OSS has taken over the enterprise: The top five OSS trends of 2015
 
Identifying and managing the risks of open source software for PHP developers
Identifying and managing the risks of open source software for PHP developersIdentifying and managing the risks of open source software for PHP developers
Identifying and managing the risks of open source software for PHP developers
 
Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016
Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016
Martin von Willebrand - Collaborative Open Source Compliance - Mindtrek 2016
 
Webinar–Why All Open Source Scans Aren't Created Equal
Webinar–Why All Open Source Scans Aren't Created EqualWebinar–Why All Open Source Scans Aren't Created Equal
Webinar–Why All Open Source Scans Aren't Created Equal
 
#OSSPARIS19 - Understanding Open Source Governance - Gilles Gravier, Wipro Li...
#OSSPARIS19 - Understanding Open Source Governance - Gilles Gravier, Wipro Li...#OSSPARIS19 - Understanding Open Source Governance - Gilles Gravier, Wipro Li...
#OSSPARIS19 - Understanding Open Source Governance - Gilles Gravier, Wipro Li...
 
Open Source Outlook: Expected Developments for 2016
Open Source Outlook: Expected Developments for 2016Open Source Outlook: Expected Developments for 2016
Open Source Outlook: Expected Developments for 2016
 
How to Keep Developers Happy and Lawyers Calm
How to Keep Developers Happy and Lawyers CalmHow to Keep Developers Happy and Lawyers Calm
How to Keep Developers Happy and Lawyers Calm
 
Managing the Software Supply Chain: Policies that Promote Innovation While Op...
Managing the Software Supply Chain: Policies that Promote Innovation While Op...Managing the Software Supply Chain: Policies that Promote Innovation While Op...
Managing the Software Supply Chain: Policies that Promote Innovation While Op...
 
How enterprises learned to stop worrying and love open source
How enterprises learned to stop worrying and love open sourceHow enterprises learned to stop worrying and love open source
How enterprises learned to stop worrying and love open source
 
Rise of the Open Source Program Office for LinuxCon 2016
Rise of the Open Source Program Office for LinuxCon 2016Rise of the Open Source Program Office for LinuxCon 2016
Rise of the Open Source Program Office for LinuxCon 2016
 
How can large open source projects be monetized?
How can large open source projects be monetized?How can large open source projects be monetized?
How can large open source projects be monetized?
 
Monetizing open-source projects
Monetizing open-source projectsMonetizing open-source projects
Monetizing open-source projects
 
5 strategies for enterprise cloud infrastructure success
5 strategies for enterprise cloud infrastructure success5 strategies for enterprise cloud infrastructure success
5 strategies for enterprise cloud infrastructure success
 
Selecting an Open Source License and Business Model for Your Project to Have ...
Selecting an Open Source License and Business Model for Your Project to Have ...Selecting an Open Source License and Business Model for Your Project to Have ...
Selecting an Open Source License and Business Model for Your Project to Have ...
 
Open Source Software: What Are Your Obligations?
Open Source Software: What Are Your Obligations? Open Source Software: What Are Your Obligations?
Open Source Software: What Are Your Obligations?
 
Webinar-DevOps.pdf
Webinar-DevOps.pdfWebinar-DevOps.pdf
Webinar-DevOps.pdf
 

More from All Things Open

Building Reliability - The Realities of Observability
Building Reliability - The Realities of ObservabilityBuilding Reliability - The Realities of Observability
Building Reliability - The Realities of Observability
All Things Open
 
Modern Database Best Practices
Modern Database Best PracticesModern Database Best Practices
Modern Database Best Practices
All Things Open
 
Open Source and Public Policy
Open Source and Public PolicyOpen Source and Public Policy
Open Source and Public Policy
All Things Open
 
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
All Things Open
 
The State of Passwordless Auth on the Web - Phil Nash
The State of Passwordless Auth on the Web - Phil NashThe State of Passwordless Auth on the Web - Phil Nash
The State of Passwordless Auth on the Web - Phil Nash
All Things Open
 
Total ReDoS: The dangers of regex in JavaScript
Total ReDoS: The dangers of regex in JavaScriptTotal ReDoS: The dangers of regex in JavaScript
Total ReDoS: The dangers of regex in JavaScript
All Things Open
 
What Does Real World Mass Adoption of Decentralized Tech Look Like?
What Does Real World Mass Adoption of Decentralized Tech Look Like?What Does Real World Mass Adoption of Decentralized Tech Look Like?
What Does Real World Mass Adoption of Decentralized Tech Look Like?
All Things Open
 
How to Write & Deploy a Smart Contract
How to Write & Deploy a Smart ContractHow to Write & Deploy a Smart Contract
How to Write & Deploy a Smart Contract
All Things Open
 
Spinning Your Drones with Cadence Workflows, Apache Kafka and TensorFlow
 Spinning Your Drones with Cadence Workflows, Apache Kafka and TensorFlow Spinning Your Drones with Cadence Workflows, Apache Kafka and TensorFlow
Spinning Your Drones with Cadence Workflows, Apache Kafka and TensorFlow
All Things Open
 
DEI Challenges and Success
DEI Challenges and SuccessDEI Challenges and Success
DEI Challenges and Success
All Things Open
 
Scaling Web Applications with Background
Scaling Web Applications with BackgroundScaling Web Applications with Background
Scaling Web Applications with Background
All Things Open
 
Supercharging tutorials with WebAssembly
Supercharging tutorials with WebAssemblySupercharging tutorials with WebAssembly
Supercharging tutorials with WebAssembly
All Things Open
 
Using SQL to Find Needles in Haystacks
Using SQL to Find Needles in HaystacksUsing SQL to Find Needles in Haystacks
Using SQL to Find Needles in Haystacks
All Things Open
 
Configuration Security as a Game of Pursuit Intercept
Configuration Security as a Game of Pursuit InterceptConfiguration Security as a Game of Pursuit Intercept
Configuration Security as a Game of Pursuit Intercept
All Things Open
 
Scaling an Open Source Sponsorship Program
Scaling an Open Source Sponsorship ProgramScaling an Open Source Sponsorship Program
Scaling an Open Source Sponsorship Program
All Things Open
 
Build Developer Experience Teams for Open Source
Build Developer Experience Teams for Open SourceBuild Developer Experience Teams for Open Source
Build Developer Experience Teams for Open Source
All Things Open
 
Deploying Models at Scale with Apache Beam
Deploying Models at Scale with Apache BeamDeploying Models at Scale with Apache Beam
Deploying Models at Scale with Apache Beam
All Things Open
 
Sudo – Giving access while staying in control
Sudo – Giving access while staying in controlSudo – Giving access while staying in control
Sudo – Giving access while staying in control
All Things Open
 
Fortifying the Future: Tackling Security Challenges in AI/ML Applications
Fortifying the Future: Tackling Security Challenges in AI/ML ApplicationsFortifying the Future: Tackling Security Challenges in AI/ML Applications
Fortifying the Future: Tackling Security Challenges in AI/ML Applications
All Things Open
 
Securing Cloud Resources Deployed with Control Planes on Kubernetes using Gov...
Securing Cloud Resources Deployed with Control Planes on Kubernetes using Gov...Securing Cloud Resources Deployed with Control Planes on Kubernetes using Gov...
Securing Cloud Resources Deployed with Control Planes on Kubernetes using Gov...
All Things Open
 

More from All Things Open (20)

Building Reliability - The Realities of Observability
Building Reliability - The Realities of ObservabilityBuilding Reliability - The Realities of Observability
Building Reliability - The Realities of Observability
 
Modern Database Best Practices
Modern Database Best PracticesModern Database Best Practices
Modern Database Best Practices
 
Open Source and Public Policy
Open Source and Public PolicyOpen Source and Public Policy
Open Source and Public Policy
 
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
 
The State of Passwordless Auth on the Web - Phil Nash
The State of Passwordless Auth on the Web - Phil NashThe State of Passwordless Auth on the Web - Phil Nash
The State of Passwordless Auth on the Web - Phil Nash
 
Total ReDoS: The dangers of regex in JavaScript
Total ReDoS: The dangers of regex in JavaScriptTotal ReDoS: The dangers of regex in JavaScript
Total ReDoS: The dangers of regex in JavaScript
 
What Does Real World Mass Adoption of Decentralized Tech Look Like?
What Does Real World Mass Adoption of Decentralized Tech Look Like?What Does Real World Mass Adoption of Decentralized Tech Look Like?
What Does Real World Mass Adoption of Decentralized Tech Look Like?
 
How to Write & Deploy a Smart Contract
How to Write & Deploy a Smart ContractHow to Write & Deploy a Smart Contract
How to Write & Deploy a Smart Contract
 
Spinning Your Drones with Cadence Workflows, Apache Kafka and TensorFlow
 Spinning Your Drones with Cadence Workflows, Apache Kafka and TensorFlow Spinning Your Drones with Cadence Workflows, Apache Kafka and TensorFlow
Spinning Your Drones with Cadence Workflows, Apache Kafka and TensorFlow
 
DEI Challenges and Success
DEI Challenges and SuccessDEI Challenges and Success
DEI Challenges and Success
 
Scaling Web Applications with Background
Scaling Web Applications with BackgroundScaling Web Applications with Background
Scaling Web Applications with Background
 
Supercharging tutorials with WebAssembly
Supercharging tutorials with WebAssemblySupercharging tutorials with WebAssembly
Supercharging tutorials with WebAssembly
 
Using SQL to Find Needles in Haystacks
Using SQL to Find Needles in HaystacksUsing SQL to Find Needles in Haystacks
Using SQL to Find Needles in Haystacks
 
Configuration Security as a Game of Pursuit Intercept
Configuration Security as a Game of Pursuit InterceptConfiguration Security as a Game of Pursuit Intercept
Configuration Security as a Game of Pursuit Intercept
 
Scaling an Open Source Sponsorship Program
Scaling an Open Source Sponsorship ProgramScaling an Open Source Sponsorship Program
Scaling an Open Source Sponsorship Program
 
Build Developer Experience Teams for Open Source
Build Developer Experience Teams for Open SourceBuild Developer Experience Teams for Open Source
Build Developer Experience Teams for Open Source
 
Deploying Models at Scale with Apache Beam
Deploying Models at Scale with Apache BeamDeploying Models at Scale with Apache Beam
Deploying Models at Scale with Apache Beam
 
Sudo – Giving access while staying in control
Sudo – Giving access while staying in controlSudo – Giving access while staying in control
Sudo – Giving access while staying in control
 
Fortifying the Future: Tackling Security Challenges in AI/ML Applications
Fortifying the Future: Tackling Security Challenges in AI/ML ApplicationsFortifying the Future: Tackling Security Challenges in AI/ML Applications
Fortifying the Future: Tackling Security Challenges in AI/ML Applications
 
Securing Cloud Resources Deployed with Control Planes on Kubernetes using Gov...
Securing Cloud Resources Deployed with Control Planes on Kubernetes using Gov...Securing Cloud Resources Deployed with Control Planes on Kubernetes using Gov...
Securing Cloud Resources Deployed with Control Planes on Kubernetes using Gov...
 

Recently uploaded

Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Fwdays
 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
Enterprise Knowledge
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
Safe Software
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
c5vrf27qcz
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
LizaNolte
 
High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024
Vadym Kazulkin
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
Miro Wengner
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
AstuteBusiness
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
christinelarrosa
 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
Fwdays
 
AppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSFAppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSF
Ajin Abraham
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Pablo Gómez Abajo
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
Ivo Velitchkov
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 

Recently uploaded (20)

Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
 
High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
 
AppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSFAppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSF
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 

Journey to Establish an Open Source Policy in a Fortune 20 Health Care Company

  • 1. 1 © 2016 Express Scripts Holding Company. All Rights Reserved. Journey to Establish an Open Source Policy in a Fortune 20 Health Care CompanyDamian Ng Head of Platform Architecture and Technology All Things Open 2017
  • 2. 2 © 2016 Express Scripts Holding Company. All Rights Reserved. About me • Distinguished Architect, Head of Platform Architecture and Technology at Express Scripts (ESI) • Leading platform strategy, target state architecture and technology innovation • Open Source Evangelist of ESI • Chief Company Pick up Soccer Organizer • Just help built the first company legal policy with in house counsel www.linkedin.com/in/ngdamian/ dng@express-scripts.com
  • 3. 3 © 2016 Express Scripts Holding Company. All Rights Reserved. What to Expect Today?
  • 4. 4 © 2016 Express Scripts Holding Company. All Rights Reserved. Background • ESI had a heavy focus on outsourcing. • ESI has contractual agreements with vendors to cover software rights. • If developers needed to ingest, ESI handled it ad hoc. • Generally no company open source contributions. • No glaring need for an Open Source Policy. • Major technology transformation in 2016 re-focused ESI on innovation and leveraged open source technology as one of the key avenues to do so.
  • 5. 5 © 2016 Express Scripts Holding Company. All Rights Reserved. How did we start? • Headaches • So many licenses! • Legal knowledge of OSS is scarce • Huge knowledge gap between understanding Open Source and designing an Open Source policy for a Fortune 100 company • Same license has various implications in different use cases • Avoid building a huge legal team to support the process • Our Priorities No Policy Ingestion Contribution Less urgent, more complex
  • 6. 6 © 2016 Express Scripts Holding Company. All Rights Reserved. Ingestion Policy
  • 7. 7 © 2016 Express Scripts Holding Company. All Rights Reserved. What do our developers care? Where to Explore? Legal Risk? Good Idea? Software Safe?
  • 8. 8 © 2016 Express Scripts Holding Company. All Rights Reserved. Objectives of ESI Ingestion Policy Encourage Exploration Review on High Risk Areas 100% Compliance vs. Practicality Self-Govern
  • 9. 9 © 2016 Express Scripts Holding Company. All Rights Reserved. Step #1: Develop Ingestion Matrix • Build a Legal Review Ingestion Matrix for internal OSS Ingestion • Handle 8 common consumption scenarios • Cover top 11 licenses • Auto-approve most scenarios without further legal review • Everything else reviewed manually • Experimentation is automatically green-lighted. • No written approval is needed for all the green light scenarios, but record for tracking purposes. • Focus on fixing continued ingestion and new use cases. ✔
  • 10. 10 © 2016 Express Scripts Holding Company. All Rights Reserved. License/Use Case Coverage • Licenses: • Apache 2.0 • BSD 2 • BSD 3 • CDDL • Eclipse 1.0 • GPL 2.0 • GPL 3.0 • LGPL 2.1 • LGPL 3.0 • MIT • MPL 2.0 • Use Cases • Experimental Testing • Code/Library that runs on a production server. • Code/Library that is distributed to users as a product • Websites where code executes on client side • Infrastructure • Internal Use End User Tool • Build Tool which incorporate code
  • 11. 11 © 2016 Express Scripts Holding Company. All Rights Reserved. ESI Open Source Ingestion Matrix Proposed Consumption based on Identified Scenarios Open Source Licenses Experimentaion Testing Scenario #2 Scenario #3 Scenario #4 Scenario #5 Scenario #6 Scenario #7 Scenario #8 License #1 License #2 License #3 License #4 License #5 License #6 License #7 License #8 License #9 License #10 License #11 All Other Licenses Green Legal/patent has deemed license and proposed consumption is a low risk; no legal/patent review required. Yellow Legal/patent has deemed license and proposed consumption is a medium risk; legal/patent review required to determine whether: (i) there is no issue, (ii) there is an issue that can be mitigated, or (iii) there is a significant concern that must be addressed. Red Legal/patent has deemed license and proposed consumption is a high risk; legal/patent review required to determine whether: (i) there is an issue that can be mitigated, or (ii) there is a significant concern that must be addressed.
  • 12. 12 © 2016 Express Scripts Holding Company. All Rights Reserved. Lesson Learned: Ingestion Matrix • Surprisingly, most of our ingestion scenarios are “green” • Native mobile applications causes the most “red” • It falls almost directly into “distribution” scenario • Build tools for mobile applications insert code via static linking • Dependency management and libraries are not your friend • Need to look up license information for dependencies • AGPL is definitely not your friend • Rely on your engineers to provide feedback and updates on product licenses. Legally Approved Good Technical Idea or Secure Software
  • 13. 13 © 2016 Express Scripts Holding Company. All Rights Reserved. Step #2: Process Flows for “everything else” • Surprise !! Developers downloading software is one of many scenarios bringing in Open Source Software into the organization! • Other Common Scenarios • Off the Shelf Software • Vendor Custom Software Development • Vendor Built Software with Custom Development • SaaS/Cloud Software • Vendor/Contractor Developer Usage • Change of legal position to share Open Source Software liability with vendors.
  • 14. 14 © 2016 Express Scripts Holding Company. All Rights Reserved. Sample Process Flow Diagram
  • 15. 15 © 2016 Express Scripts Holding Company. All Rights Reserved. Lesson Learned: Process Flows • More non-developer ingestion when policy first rolled out. • Dependency management and libraries are not your friend, again. • But this time vendors/partners need to provide all the information. • Spend time to diagram the process flows help explain concepts a lot easier. • Socialize the process with sourcing/procurement!! • Take a lot longer to roll out the programs/flows than we anticipated
  • 16. 16 © 2016 Express Scripts Holding Company. All Rights Reserved. Contribution Policy
  • 17. 17 © 2016 Express Scripts Holding Company. All Rights Reserved. Objectives Contribute Personal code without Approval Visibility and Approval of ESI Code Contribution Simplify Process to Contribute post initial approval Minimize Risk of unintentionally licensing patents
  • 18. 18 © 2016 Express Scripts Holding Company. All Rights Reserved. What do our developers care? I wrote some code while employed by ESI, can I contribute? What’s the process? Need a contribution policy!
  • 19. 19 © 2016 Express Scripts Holding Company. All Rights Reserved. Common Mis-conceptions The code is mine! If I write my code in non- company time If I write my code in my personal laptop If the code is not related to my company business It’s MINE !!!
  • 20. 20 © 2016 Express Scripts Holding Company. All Rights Reserved. Step #1: Who has the right of what? • We reviewed existing ESI IP assignment agreement signed by employees: • What does the company own (e.g. business IP, personal IP, etc.)? • What do employees own? • What’s the review process to determine rights? • Discovered gap that did not allow for open source contribution and modify the IP assignment agreement. Needed to first modify the IP assignment agreement before launching the contribution policy. The IP agreement must be first signed by employees before executing the policy!!
  • 21. 21 © 2016 Express Scripts Holding Company. All Rights Reserved. Step #2: Clear Explanation of IP Ownership• What code do I write? • Your code IS Company IP if it is ESI business related. • Where do I write/store the code? • Company or personal laptop is NOT a factor on whether the code is Company IP. • When do I write the code? • Company or personal time is NOT a factor on whether the code is Company IP. • Code I owned before joining the company? • That’s all yours. • Code I owned before joining the Company but continue to develop while at the Company? • Code before joining the company is all yours. • Business related code after joining the company is Company IP; personal code is all yours. Prepare this for your technology team !
  • 22. 22 © 2016 Express Scripts Holding Company. All Rights Reserved. Step #3 Contributing • Request legal approval for contribution • Legal review for the following: • Proprietary nature of code and competitive risk of contribution • Business Proprietary vs. common utilities • New project vs. bug fix • Estimated LOC • Upon written approval to contribute, ESI developer can start contributing project code to Open Source. • Re-evaluate every 6 months; or based on VP approval • Open Source license is irrelevant • Minimize company references • Personal email vs. Company email
  • 23. 23 © 2016 Express Scripts Holding Company. All Rights Reserved. Lesson Learned: Contribution Policy • Our IP assignment did not cover Open Source contribution; take time to adjust it before the policy can be rolled out. • Try to roll out the policy to align with re-signing of the IP agreement! • Legal review is required more frequently than anticipated. Developers and even management often have no visibility on potential M&A activities. • Referencing the company during contribution could be tricky; check with your legal/communication teams. • Treat company contribution as an edge case. • Do not attempt to review the actual code. • Build simplified version of explanation instead of only using legal documents. • No silver bullet templates to be leveraged.
  • 24. 24 © 2016 Express Scripts Holding Company. All Rights Reserved. Thank You !