Do you find constantly rebuilding things that don’t need rebuilding? If yes, this talk is for you. The way your codebase is structured impacts what you need to rebuild after each commit, therefore, the codebase needs to be re-architectured with the build pipeline in mind. Sometimes you’ll have many responsibilities packed in one module, so you rebuild all of them every time you change one. Or maybe you have a multi-tiered application and adding a feature implies modifying (and rebuilding) all tiers, with cascading effects. In this talk we’ll go over scenarios like this and others, showing how the code can be rewritten in a way that minimises unnecessary rebuilds. In the end, you’ll be equipped with a number of techniques that will help you manage your build pipeline.
Improve collaboration and confidence with Consumer-driven contractsPierre Vincent
Talk from March 21th 2017 at Pipeline, the Continuous Delivery conference (https://web.pipelineconf.info)
Autonomy and isolation are some of the core values of microservices, allowing for independent changes and independent deployments. As loosely coupled services interact on interfaces managed under different life-cycles and even different teams, making sure that a simple change did not break the application can turn into an integration nightmare.
Consumer-Driven Contracts testing brings an alternative integration testing approach for distributed systems, relying less on live-like integration environments and more on making interactions explicit and quickly verifiable.
This talk cover how Newsweaver (https://www.newsweaver.com/email-overview) has made CDCs part of its pipeline with Pact and how it improved collaboration and confidence between teams when designing APIs.
Merge hells!! feature toggles to the rescueLeena N
Introducing Continuous Delivery practices to a team in trouble can be daunting. Where do you start ? What do you do first ? Which battle do you pick first ?
I’ll share my experience of guiding a team to achieve a higher degree of delivery maturity. This is a journey from a troublesome, struggling start of chaotic manual deployments, merge hell, regular production roll backs and lost code, to deliver a single commit to trunk automatically and reliably, under an hour, many times a day.
Manchester Expert Talks (April 2017) - Breaking Down Your Build: Architectura...Abraham Marin-Perez
Structuring your codebase without the build pipeline in mind may lead to a situation where your changes force rebuilding things that don’t really need to be rebuilt. In this talk I’ll go through different scenarios that create this effect, showing ways in which the situation can be fixed.
Versioning strategy for a complex internal API (Konstantin Yakushev)Nordic APIs
This is a session given by Konstantin Yakushev at Nordic APIs 2016 Platform Summit on October 25th, in Stockholm Sweden.
Description:
API versioning is a very heated topic in API design world. Common approaches are passing version number explicitly (with a lot of fairly useless discussion on where exactly to put that number) or only introducing backwards-compatible changes.
When creating internal API for Badoo applications we found those approaches to be too limiting. Passing version number requires implementers to accommodate for all breaking changes when bumping version – even when it’s not required for business goals of that application at the time. Instead of driving value for business, application developers are in constant race to keep up with the API.
Never introducing incompatible changes is also not an option. After several feature redesigns (something that may happen at Badoo once every few weeks) protocol becomes bloated and half of the fields transmitted over the wire start being useless.
This talk is about our approach to versioning as part of client-server component negotiation. Client announces features and capabilities it supports and server replies with features status: whether they are enabled or disabled and whether they can be enabled by some user action (e. g. by buying some paid product).
Beside those componentized features, client also sends support flags such as SUPPORT_IMAGE_SIZE_VIA_URL which affects how API works. We use those flags where in typical API a version number bump would be required.
This approach allows both server and client to understand their current state and adjust their code accordingly – essentially, a tailor-made API for every client. Gathering data on feature and flag support among clients allows us to remove old code branches while continuing to evolve the API.
As a result, we are not afraid to change something when that change is required. Old clients continue to work while protocol rot is kept at low level.
In this talk I will give details on how exactly this versioning scheme work, how we test those changes, how and when we deprecate our old clients and note some stats and insights from using this scheme at Badoo for several years.
In larger teams it's often common for a large percentage of reusable code to go overlooked, and code that is packaged by other teams is not always easy to find. One of the biggest hits to velocity is repetition of functionality.
Learn how to make code more discoverable to your teams and more friendly to use in this one-hour lightning talk.
Automating Your Way to Greatness by Combining OutSystems CI/CD with the Power...OutSystems
Having built-in CI/CD capabilities has always been a core tenet of the OutSystems platform. As customer factories have grown and CI/CD pipelines have become more complex, OutSystems has developed an integration with some of the leading CI/CD DevOps tools in the market, Jenkins, and Azure DevOps to tackle some of the challenges of managing enterprise-grade CI/CD pipelines.
Introduction to Enterprise-Release Engineering on the Salesforce PlatformSalesforce Developers
Managing multiple release schedules, workstreams, and code versions is a critical task to ensure your salesforce.com organization maintains security, integrity, and the ability to stay flexible. Join us to learn how to set up a governing team, how to size up what goes into a release, and how to use Github, Jenkins, and the ant deployment tools. You'll leave ready to develop your own release strategy for managing enterprise-level deployments and improvements.
Improve collaboration and confidence with Consumer-driven contractsPierre Vincent
Talk from March 21th 2017 at Pipeline, the Continuous Delivery conference (https://web.pipelineconf.info)
Autonomy and isolation are some of the core values of microservices, allowing for independent changes and independent deployments. As loosely coupled services interact on interfaces managed under different life-cycles and even different teams, making sure that a simple change did not break the application can turn into an integration nightmare.
Consumer-Driven Contracts testing brings an alternative integration testing approach for distributed systems, relying less on live-like integration environments and more on making interactions explicit and quickly verifiable.
This talk cover how Newsweaver (https://www.newsweaver.com/email-overview) has made CDCs part of its pipeline with Pact and how it improved collaboration and confidence between teams when designing APIs.
Merge hells!! feature toggles to the rescueLeena N
Introducing Continuous Delivery practices to a team in trouble can be daunting. Where do you start ? What do you do first ? Which battle do you pick first ?
I’ll share my experience of guiding a team to achieve a higher degree of delivery maturity. This is a journey from a troublesome, struggling start of chaotic manual deployments, merge hell, regular production roll backs and lost code, to deliver a single commit to trunk automatically and reliably, under an hour, many times a day.
Manchester Expert Talks (April 2017) - Breaking Down Your Build: Architectura...Abraham Marin-Perez
Structuring your codebase without the build pipeline in mind may lead to a situation where your changes force rebuilding things that don’t really need to be rebuilt. In this talk I’ll go through different scenarios that create this effect, showing ways in which the situation can be fixed.
Versioning strategy for a complex internal API (Konstantin Yakushev)Nordic APIs
This is a session given by Konstantin Yakushev at Nordic APIs 2016 Platform Summit on October 25th, in Stockholm Sweden.
Description:
API versioning is a very heated topic in API design world. Common approaches are passing version number explicitly (with a lot of fairly useless discussion on where exactly to put that number) or only introducing backwards-compatible changes.
When creating internal API for Badoo applications we found those approaches to be too limiting. Passing version number requires implementers to accommodate for all breaking changes when bumping version – even when it’s not required for business goals of that application at the time. Instead of driving value for business, application developers are in constant race to keep up with the API.
Never introducing incompatible changes is also not an option. After several feature redesigns (something that may happen at Badoo once every few weeks) protocol becomes bloated and half of the fields transmitted over the wire start being useless.
This talk is about our approach to versioning as part of client-server component negotiation. Client announces features and capabilities it supports and server replies with features status: whether they are enabled or disabled and whether they can be enabled by some user action (e. g. by buying some paid product).
Beside those componentized features, client also sends support flags such as SUPPORT_IMAGE_SIZE_VIA_URL which affects how API works. We use those flags where in typical API a version number bump would be required.
This approach allows both server and client to understand their current state and adjust their code accordingly – essentially, a tailor-made API for every client. Gathering data on feature and flag support among clients allows us to remove old code branches while continuing to evolve the API.
As a result, we are not afraid to change something when that change is required. Old clients continue to work while protocol rot is kept at low level.
In this talk I will give details on how exactly this versioning scheme work, how we test those changes, how and when we deprecate our old clients and note some stats and insights from using this scheme at Badoo for several years.
In larger teams it's often common for a large percentage of reusable code to go overlooked, and code that is packaged by other teams is not always easy to find. One of the biggest hits to velocity is repetition of functionality.
Learn how to make code more discoverable to your teams and more friendly to use in this one-hour lightning talk.
Automating Your Way to Greatness by Combining OutSystems CI/CD with the Power...OutSystems
Having built-in CI/CD capabilities has always been a core tenet of the OutSystems platform. As customer factories have grown and CI/CD pipelines have become more complex, OutSystems has developed an integration with some of the leading CI/CD DevOps tools in the market, Jenkins, and Azure DevOps to tackle some of the challenges of managing enterprise-grade CI/CD pipelines.
Introduction to Enterprise-Release Engineering on the Salesforce PlatformSalesforce Developers
Managing multiple release schedules, workstreams, and code versions is a critical task to ensure your salesforce.com organization maintains security, integrity, and the ability to stay flexible. Join us to learn how to set up a governing team, how to size up what goes into a release, and how to use Github, Jenkins, and the ant deployment tools. You'll leave ready to develop your own release strategy for managing enterprise-level deployments and improvements.
Continuous Integration In The Cloud Final (1)Alexis Williams
Continuous integration of cloud based applications using a combination of technologies: Visual Force, Apex, Selenium, Jenkins, Ant, & YUI test framework
Continuous Integration, Deploy, Test From Beginning To End 2014Clever Moe
Frank Cohen, CTO/Founder at Appvance, teaches developers and testers how to become more closely aligned with easily deployable and configurable tools such as Jenkins CI and performance testing platforms. Learn how to: * Merge Agile SDLC and Performance Testing * Speed-up test operations by configuring Jenkins for automatic build, deploy, and tests * Instantly identify functional and performance issues using Jenkins as a performance dashboard * Use effective choices in Jenkins deployment – in the cloud, hosted, or in your datacenter
Story Testing Approach for Enterprise Applications using Selenium FrameworkOleksiy Rezchykov
Releasing a big software product frequently on the same high quality level could became an impossible task. Story Testing approach gives a possibility for many teams to work for a same product and release it without putting enormous efforts on testing. Approach is based on the BDD technique, Feature Flags and Selenium.
Running JMeter Tests In Appvance PerformanceCloudClever Moe
Appvance PerformanceCloud (APC) is the first beginning-to-end test system which accurately drives 100% of the actual user interactions, even with complex HTML5 and AJAX client-side code. Apache JMeter is an Apache project to test Web applications at the HTTP protocol level. Adding the ability to re-use existing JMeter scripts with the Appvance cloud testing platform enables JMeter users to test Web apps, Ajax apps, Mobile (iOS/Android), and Oracle Forms apps.
Beautiful Builds - Roy Osherove at Microsoft SwitRoy Osherove
more info at http://BeautifulBuilds.com
Roy Osherove speaks at Microsoft SWIT conference in Ukraine about build patterns, build tools, continuous integration, continuous delivery, and how to make it all work.
STARWest: Use Jenkins For Continuous Load Testing And Mobile Test AutomationClever Moe
Frank Cohen's session from the STARWest (Software Test Automation) conference, October 2014. Building mobile apps and Ajax apps effectively requires a blended approach to test automation. Frank Cohen, CTO/Founder at Appvance, shows how to leverage the best application performance test methodology with test tools to deliver excellent Ajax, iOS and Android apps. Learn how to: * Effectively choose a mobile testing method for Agile shops * Reduce costs by choosing the best tools (Appium, Jenkins, Appvance PerformanceCloud) * Scale-up your mobile testing to thousands of test suites automatically * The mix-and-match mobile testing methodology for just-in-time performance testing
Thorben Lindhauer: Live Coding: Zeebe - Camunda Day San Franciscocamunda services GmbH
Zeebe is the next generation workflow engine developed by Camunda. It takes workflow automation to an entirely new level, with massive throughput and infinite horizontal scalibility. In this session, Zeebe core developer Thorben Lindhauer will demonstrate how to get started with Zeebe.
Uploading your first component to the Forge can seem overwhelming when you don't know what to expect, especially since there are so many experienced developers looking at what is loaded on a daily basis. Come and see what it is like to upload a component to the Forge, how to manage component versions, and more.
As an organization grows, the body of code that needs to be regression tested constantly increases. However, to maintain high velocity and deliver new features, teams need to minimize the amount of manual regression testing. Eric Smith shares his lessons learned in automating RESTful API tests using JMeter, RSpec, and Spock. Gain insights into the pros and cons of each tool, take back practical knowledge about the tools available, and explore reasons why your shop should require RESTful automation as part of its acceptance test criteria. Many decisions must be made to automate API tests: choosing the platform; how to integrate with the current build and deploy process; and how to integrate with reporting tools to keep key stakeholders informed. Although the initial transition caused his teams to bend their traditional roles, Eric says that ultimately the team became more cross-functionally aligned and developed a greater sense of ownership for delivering a quality product.
Een kleine React applicatie bouwen met een backend is niet moeilijk. Maar wat als de applicatie groter en complexer wordt? Dan wordt het een ander verhaal. En al helemaal als het een publiek toegankelijke applicatie is.
Plotseling blijkt dat allerlei vaak gedane aannames niet meer kloppen. Je krijgt te maken met netwerkstoringen en schaalbaarheid. Verschillende teams die onafhankelijk van elkaar aan de front- en backend werken. Runtime fouten die optreden omdat sommige browsers toch net even anders blijken te werken dan je verwacht.
In deze sessie gaat Maurice de Beijer zijn ervaringen delen over hoe je dit aan kan pakken.
Serverless Architectures and Continuous DeliveryRobin Weston
Serverless architectures have been touted as the next evolution of cloud-hosted software. Indeed, the promise of resiliency and scalability without the need for infrastructure management sounds too good to be true!
But how well do serverless architectures play with the patterns and practises of continuous delivery? Do they help or hinder us in our goal of delivering frequent and low risk software changes to production? What are the trade-offs to weigh up when considering using a serverless architecture on your next project?
This presentation will give a brief initial introduction to the world of serverless architectures. We’ll then look at their benefits and drawbacks, with a particular focus on our recent experiences building and operating a production AWS Lambda and API Gateway system. We’ll also look at the ever-evolving tooling and service ecosystems, and make some suggestions regarding how to start safely dipping your toes in the serverless waters.
PDF, audio, and voiceover are now available on designintechreport.wordpress.com
Today’s most beloved technology products and services balance design and engineering in a way that perfectly blends form and function. Businesses started by designers have created billions of dollars of value, are raising billions in capital, and VC firms increasingly see the importance of design. The third annual Design in Tech Report examines how design trends are revolutionizing the entrepreneurial and corporate ecosystems in tech. This report covers related M&A activity, new patterns in creativity × business, and the rise of computational design.
Continuous Integration In The Cloud Final (1)Alexis Williams
Continuous integration of cloud based applications using a combination of technologies: Visual Force, Apex, Selenium, Jenkins, Ant, & YUI test framework
Continuous Integration, Deploy, Test From Beginning To End 2014Clever Moe
Frank Cohen, CTO/Founder at Appvance, teaches developers and testers how to become more closely aligned with easily deployable and configurable tools such as Jenkins CI and performance testing platforms. Learn how to: * Merge Agile SDLC and Performance Testing * Speed-up test operations by configuring Jenkins for automatic build, deploy, and tests * Instantly identify functional and performance issues using Jenkins as a performance dashboard * Use effective choices in Jenkins deployment – in the cloud, hosted, or in your datacenter
Story Testing Approach for Enterprise Applications using Selenium FrameworkOleksiy Rezchykov
Releasing a big software product frequently on the same high quality level could became an impossible task. Story Testing approach gives a possibility for many teams to work for a same product and release it without putting enormous efforts on testing. Approach is based on the BDD technique, Feature Flags and Selenium.
Running JMeter Tests In Appvance PerformanceCloudClever Moe
Appvance PerformanceCloud (APC) is the first beginning-to-end test system which accurately drives 100% of the actual user interactions, even with complex HTML5 and AJAX client-side code. Apache JMeter is an Apache project to test Web applications at the HTTP protocol level. Adding the ability to re-use existing JMeter scripts with the Appvance cloud testing platform enables JMeter users to test Web apps, Ajax apps, Mobile (iOS/Android), and Oracle Forms apps.
Beautiful Builds - Roy Osherove at Microsoft SwitRoy Osherove
more info at http://BeautifulBuilds.com
Roy Osherove speaks at Microsoft SWIT conference in Ukraine about build patterns, build tools, continuous integration, continuous delivery, and how to make it all work.
STARWest: Use Jenkins For Continuous Load Testing And Mobile Test AutomationClever Moe
Frank Cohen's session from the STARWest (Software Test Automation) conference, October 2014. Building mobile apps and Ajax apps effectively requires a blended approach to test automation. Frank Cohen, CTO/Founder at Appvance, shows how to leverage the best application performance test methodology with test tools to deliver excellent Ajax, iOS and Android apps. Learn how to: * Effectively choose a mobile testing method for Agile shops * Reduce costs by choosing the best tools (Appium, Jenkins, Appvance PerformanceCloud) * Scale-up your mobile testing to thousands of test suites automatically * The mix-and-match mobile testing methodology for just-in-time performance testing
Thorben Lindhauer: Live Coding: Zeebe - Camunda Day San Franciscocamunda services GmbH
Zeebe is the next generation workflow engine developed by Camunda. It takes workflow automation to an entirely new level, with massive throughput and infinite horizontal scalibility. In this session, Zeebe core developer Thorben Lindhauer will demonstrate how to get started with Zeebe.
Uploading your first component to the Forge can seem overwhelming when you don't know what to expect, especially since there are so many experienced developers looking at what is loaded on a daily basis. Come and see what it is like to upload a component to the Forge, how to manage component versions, and more.
As an organization grows, the body of code that needs to be regression tested constantly increases. However, to maintain high velocity and deliver new features, teams need to minimize the amount of manual regression testing. Eric Smith shares his lessons learned in automating RESTful API tests using JMeter, RSpec, and Spock. Gain insights into the pros and cons of each tool, take back practical knowledge about the tools available, and explore reasons why your shop should require RESTful automation as part of its acceptance test criteria. Many decisions must be made to automate API tests: choosing the platform; how to integrate with the current build and deploy process; and how to integrate with reporting tools to keep key stakeholders informed. Although the initial transition caused his teams to bend their traditional roles, Eric says that ultimately the team became more cross-functionally aligned and developed a greater sense of ownership for delivering a quality product.
Een kleine React applicatie bouwen met een backend is niet moeilijk. Maar wat als de applicatie groter en complexer wordt? Dan wordt het een ander verhaal. En al helemaal als het een publiek toegankelijke applicatie is.
Plotseling blijkt dat allerlei vaak gedane aannames niet meer kloppen. Je krijgt te maken met netwerkstoringen en schaalbaarheid. Verschillende teams die onafhankelijk van elkaar aan de front- en backend werken. Runtime fouten die optreden omdat sommige browsers toch net even anders blijken te werken dan je verwacht.
In deze sessie gaat Maurice de Beijer zijn ervaringen delen over hoe je dit aan kan pakken.
Serverless Architectures and Continuous DeliveryRobin Weston
Serverless architectures have been touted as the next evolution of cloud-hosted software. Indeed, the promise of resiliency and scalability without the need for infrastructure management sounds too good to be true!
But how well do serverless architectures play with the patterns and practises of continuous delivery? Do they help or hinder us in our goal of delivering frequent and low risk software changes to production? What are the trade-offs to weigh up when considering using a serverless architecture on your next project?
This presentation will give a brief initial introduction to the world of serverless architectures. We’ll then look at their benefits and drawbacks, with a particular focus on our recent experiences building and operating a production AWS Lambda and API Gateway system. We’ll also look at the ever-evolving tooling and service ecosystems, and make some suggestions regarding how to start safely dipping your toes in the serverless waters.
PDF, audio, and voiceover are now available on designintechreport.wordpress.com
Today’s most beloved technology products and services balance design and engineering in a way that perfectly blends form and function. Businesses started by designers have created billions of dollars of value, are raising billions in capital, and VC firms increasingly see the importance of design. The third annual Design in Tech Report examines how design trends are revolutionizing the entrepreneurial and corporate ecosystems in tech. This report covers related M&A activity, new patterns in creativity × business, and the rise of computational design.
Congress seeks metrics for the NIST Cybersecurity FrameworkDavid Sweigert
Uploaded as a courtesy by:
Dave Sweigert
Legislation calling on the National Institute of Standards and Technology to develop outcome metrics to demonstrate the effectiveness of the NIST Cybersecurity Framework is scheduled to be considered - and likely amended - at a markup session of the House Science, Space and Technology Committee..
(1) IN GENERAL.—The Institute shall promote the implementation by Federal agencies of the Framework for Improving Critical Infrastructure Cybersecurity (in this section and section 20B referred to as the ‘Framework’) by providing to the Office of Management and Budget, the Office of Science and Technology Policy, and all other Federal agencies, not later than 6 months after the date of enactment of the NIST Cybersecurity Framework, Assessment, and Auditing Act of 2017, guidance that Federal agencies may use to incorporate the Framework into their information security risk management efforts, including practices related to compliance with chapter 35 of title 44, United States Code, and any other applicable Federal law.
The report offers elaborate profiles of two hundred (200) Social Media Monitoring (SMM) tools and services worldwide including key product features, product applications, product screenshots, pricing and client information on more than 150 SMM tools and services, and much more. The Analysis part of the Report also provides a detailed guide to selecting and using SMM tools and services, definition of important SMM concepts and key applications, and up-to-date information on market trends including M&A activity.
Visit our SMM Tools and Services Report page at http://ideya.eu.com/reports.html
Definitive Guide to Local SEO Ranking Factors - SMX West 2017Daniel Leibson
Here is our presentation from SMX West 2017 covering:
Local SEO Ranking Factors Data Study
Near Me Ranking Factors Data Study
Locator/Location Page Analysis
Deep Dive on Proximity
En el nº 65 de ACCIONA Informa acudimos a Oriente Medio para adentrarnos en "el arte de hacer negocios"; conocemos de cerca el Programa 'Luz en Casa' de ACCIONA Microenergía; y analizamos la alianza para proporcionar energía limpia a Google en Chile, entre otros temas.
Next Generation Digital Enterprise (Workplace) Technology | Enterprise Digita...Dion Hinchcliffe
I explored how the digital workplace is evolving i 2017, and how systems of record and systems of engagement are at last starting to come together. With IoT, artificial intelligence, and people-centric enablement, digital workplace is at its most exciting point in recent memory. From my keynote at Enterprise Digital Arena at CeBIT today.
Agile roundabout 2017 01 - keeping your ci-cd system as fast as it needs to beAbraham Marin-Perez
Short version of my talk on how to keep CI/CD pipelines as fast as needed. This presentation delves into why fast build pipelines are important and explores different approaches to achieve and measure this.
The Be-All, End-All List of Small Business Tax DeductionsWagepoint
Read the full article with even more details at https://blog.wagepoint.com/h/i/289427271-the-comprehensive-list-of-small-business-tax-deductions/185037
Buyers no longer use voicemails and emails from strangers to learn about products. This information is online, whenever buyers are interested. This SlideShare presentation show sellers how to connect in a meaningful way by starting conversations around the buyer’s plans, goals and challenges.
This presentation is one class in HubSpot Academy's free sales training course. You can enroll here: http://certification.hubspot.com/inbound-sales-certification
Modern Prospecting Techniques for Connecting with Prospects (from Sales Hacke...HubSpot
Sales is a difficult world to be in because buyers aren't putting up with salespeople anymore. Instead of helping and building relationships, sales reps are still focused on closing prospects - even when they aren't ready to buy! So buyers ignore them. Because of that, even great sales reps would be lucky to get on the phone with someone.
While buyers have evolved and become more sophisticated, sales reps and training programs have been slow to adapt to that change.
Learn actionable modern prospecting techniques you can apply immediately from two best selling authors and sales experts: Max Altschuler CEO of Sales Hacker, and Mark Roberge CRO of HubSpot.
Class 1: Email Marketing Certification course: Email Marketing and Your BusinessHubSpot
*From HubSpot Academy*
Over the past few decades, people have radically changed the way they live, work and buy. This class will give you an overview of an adaptive, inbound approach to sending emails that provide value and drive growth for your business. It will also teach you about the four big themes of a modern email marketing program: segmentation, personalization, mobile, and optimization.
Why People Block Ads (And What It Means for Marketers and Advertisers) [New R...HubSpot
HubSpot Research shares new data on why people use ad blockers and what marketers and advertisers need to do to keep people from blocking out ads completely. Hint: it's stop using interruptive and annoying ads.
3 Proven Sales Email Templates Used by Successful CompaniesHubSpot
76% of emails never get opened. That makes life for salespeople very difficult. So we've partnered up with Breakthrough Email to bring you email templates that are proven to engage prospects and close more deals. Start using them today and grow your revenue.
Goto meetup Stockholm - Let your microservices flowBernd Ruecker
Slides from my talk at the GOTO meetup in Stockholm on 5th of April 2017. The talk is about the flow in microservices, so how a bunch of loosely coupled microservices can fulfill an overall business goal.
Breaking down your build: Architectural patterns for a more efficient pipelin...Abraham Marin-Perez
Do you find constantly rebuilding things that don’t need rebuilding? If so, this talk is for you. The way your codebase is structured impacts what you need to rebuild after each commit, therefore, the codebase needs to be re-architected with the build pipeline in mind. Sometimes you’ll have many responsibilities packed in one module, so you rebuild all of them every time you change one. Or maybe you have a multi-tiered application and adding a feature implies modifying (and rebuilding) all tiers, with cascading effects. In this talk we’ll go over scenarios like this and others, showing how the code can be rewritten in a way that minimises unnecessary rebuilds.
Ripping off the Bandage: Re-Architecting Traditional Three-Tier Monoliths to ...Amazon Web Services
The world is powered by many monolithic applications that were written many years ago. These applications have complicated code bases. They are also difficult to maintain, deploy, and operate. The cloud, microservices, and serverless provide agility, efficiency, and resiliency. In this chalk talk, we highlight various approaches for rearchitecting three-tier monoliths to serverless microservices for your customers.
Christian's part of the AWS re:Invent 2015 talk shared with Sajee Mathew - ARC304 - Designing for SaaS: Next Generation Software Delivery Models on AWS. Full video of the 60 minute presentation: https://www.youtube.com/watch?v=d16aUztH9hk&list=PLhr1KZpdzukdRxs_pGJm-qSy5LayL6W_Y
[@IndeedEng] Boxcar: A self-balancing distributed services protocol indeedeng
Video available at: http://www.youtube.com/watch?v=E1ok08TVxDw
Indeed's flagship job search product has evolved over the years to meet new challenges. It began as a single, monolithic web application. This grew larger and increasingly complex as we built new features. To remedy this growing problem, we implemented a service-oriented architecture to improve system availability, scalability, and maintainability. We examined common practices for service-oriented architectures, and we discovered ways to improve on the state of the art. We developed these ideas into a new framework called Boxcar. In this talk, we will discuss the scaling problems we solved, the innovative ideas behind boxcar, and how we built the scalable architecture that we now use throughout our systems.
R.B. Boyer is a Software Engineer who has been with Indeed since late 2007. Over the years he has worked on a variety of projects, including distributed storage, authentication, and service architectures.
When breaking your monolith into components, services or even functions you must understand WHERE and HOW you break your existing code base and architecture into smaller units to allow it to SCALE, PERFORM and make it EASY enough to operate!
In this session a Dynatrace Technical AWS Advocate, shows us how companies such as Barbri, Landbay and Citrix redefined their architecture on top of AWS; how Dynatrace was leveraged to re-platform and re-architecture; and how these lessons learned can benefit all of us to transform Fearless from Monolith to Serverless!
End-to-End Continuous Delivery with CA Automic Release Automation and CA Serv...CA Technologies
End-to-End Continuous Delivery with CA Automic Release Automation and CA Service Virtualization
For more information on Automation, please visit: http://ow.ly/swr750fQDmv
Placement of BPM runtime components in an SOA environmentKim Clark
The service oriented architecture (SOA) reference architecture is intentionally simplistic at a high level but it holds some surprises when you look closely at how components really interact. This is especially true in relation to the placement of business process management (BPM) componentry. We discuss the most common design questions including: Is BPM a consumer or provider of services? To what extent should a user interface, be decoupled from the BPM runtime? How do we retain agility in BPM while adhering to the architectural separation of SOA? These subtleties are critical when designing solutions to reap benefits of both SOA and BPM simultaneously.
Microservices - Hitchhiker's guide to cloud native applicationsStijn Van Den Enden
Microservices are a true hype these days. Netflix, Amazon, eBay, … are all using microservices, but why? The idea is simple; split your application into multiple services which can evolve autonomously through time. The name suggests to keep these services small. Conceptually this seems not all that different from a classical Service Oriented Architecture (SOA). Nonetheless, microservices do offer a new perspective. A monolithic application is divided into a couple small services which can be independently developed, deployed and scaled. Flexibility is increased, but using this model also has some pitfalls.This session sheds a light on the microservices landscape; the key drivers for using the pattern, tooling to support development and maintenance, and the pros and cons that go with it. We’ll also introduce some key design principles that can be used in creating and modelling these modular enterprise applications.
Building Real-Time Serverless Data Applications With Joseph Morais and Adam W...HostedbyConfluent
Building Real-Time Serverless Data Applications With Joseph Morais and Adam Wagner | Current 2022
Enterprises that are trying to accelerate development times for their digital native applications are defaulting to serverless architectures. And for good reasons too. With self-serve provisioning, elastic scaling, lower TCO, and industry standard security features, it makes it easy for developers to spend more time building and less time managing.
Join this session to see first hand how developers are pairing Confluent's cloud native, serverless Apache Kafka offering with AWS's serverless services to build data apps and platform that scale.
The technical advantages of a microservices architecture pattern are understood by many AWS customers. In this session, the innovation advantages of microservices are explored from a business perspective together with business agility lessons learned during an evolution from a single monolithic application to cloud based microservices.
Speaker: Craig Dickson, Solutions Architect, Amazon Web Services
Changing application demands: What developers need to knowIndicThreads
Due to the demands of our hyper-connected, Internet-driven economy, users expect speedy delivery of new features, highly engaging personalized user experiences, and smooth, streamlined performance. The result is that best practices for application development and architecture are rapidly changing.
Traditional approaches to development are no longer competitive, with the new focus on simplicity, usability, and large-scale DevOps agility. In order to thrive, development teams must adjust to deliver high-quality applications fast.
This keynote will discuss:
The traditional monolith application vs. the modern application.
Architectural considerations for the modern application.
How trends such as DevOps and microservices affect application design.
Tools, technologies, and techniques for building modern applications.
Session at the IndicThreads.com Confence held in Pune, India on 27-28 Feb 2015
http://www.indicthreads.com
http://pune15.indicthreads.com
If you have been looking for mobile app development solutions, then look no further than Sortd. The new-age digital company specialises in native apps, progressive web apps, accelerated mobile pages, Smart TV apps, site optimization, etc. The experts here also assist you in increasing your monetization potential so that you can get the most fruitful returns out of your business investment.
To ensure you're hitting this target for most of your users, a good threshold to measure is the 75th percentile of page loads,segmented across mobile and desktop devices
This presentation runs you through why we decided to create a new architecture and how we managed to rewrite and launch Uber’s Rider app with this new architecture in record time. We’ll talk through the core principles of the new architecture and why we think it’s a perfect fit for creating reliable, highly maintainable mobile applications, especially when you’re working at scale and have a large mobile team.
by Itzik Paz, Solutions Architect & Rich Cowper, Solutions Architect Manager, AWS
This presentation compares three modern architecture patterns that startups are building their businesses around. It includes a realistic analysis of cost, team management, and security implications of each approach. It covers AWS Elastic Beanstalk, Amazon ECS, Docker, Amazon API Gateway, AWS Lambda, Amazon DynamoDB, and Amazon CloudFront.
Best practices for enterprise-grade microservices implementations with Google...Grid Dynamics
When migrating to cloud and microservices architecture, companies need to invest in foundational capabilities, such as a microservices platform, continuous delivery, and an immutable infrastructure. In this talk we will discuss our experience implementing these capabilities on the enterprise scale with Google Cloud, Kubernetes, Istio, Envoy, Spinnaker, and Hashicorp stack. We will also discuss best practices of onboarding the cloud to facilitate DevOps, SRE without sacrificing quality or control.
Best practices for enterprise-grade microservices implementations with Google...Grid Dynamics
When migrating to cloud and microservices architecture, companies need to invest in foundational capabilities, such as a microservices platform, continuous delivery, and an immutable infrastructure. In this talk, we will discuss our experience implementing these capabilities on the enterprise scale with Google Cloud, Kubernetes, Istio, Envoy, Spinnaker, and Hashicorp stack. We will also discuss best practices of onboarding the cloud to facilitate DevOps, SRE without sacrificing quality or control.
Similar to Pipeline conference 2017 - Breaking down your build: architectural patterns for a more efficient pipeline 4-3 (20)
Create a branch. Run the build. SSH into a Docker container. The developer’s day-to-day life is filled with little actions that require us to type particular orders into the command line. They are so small that we often don’t think much of them, but we run them so often that they end up taking an invisible toll; it feels like they’re getting in the way of real work.
This talk will show basic Bash scripting tools to automate most of your common day-to-day tasks, together with some ideas of what you should automate. The content will hopefully ease your work, speed up common activities, and reduce the probability of common (and annoying) mistakes.
Expert Talks Cardiff 2017 - Keeping your ci-cd system as fast as it needs to beAbraham Marin-Perez
First, you automated your build. Then your build grew out of control, so you decided to split it into modules that trigger each other as needed. Now you have a large chain of builds, each of them taking a short amount of time (brilliant!), but each time you commit you don't just build one thing, you build and rebuild so many modules that it, again, takes forever to clear up every time you commit a change.
In this talk I'll show you what information you need to gather from your CI/CD pipeline, and how you can gather such information, in order to re-shape the architecture of your systems so as to optimise your build time
Presentation at the Manchester Java Community, October 2016, about how to build and manage a scalable Continuous Integration / Continuous Deployment pipeline.
Slides from my presentation in JavaOne 2016 on the topic of how to keep your CI/CD pipeline under control. Don't let it grow to unmanageable build times! Learn to find out when your pipeline is too slow and you need to do something about it, and when it's fine and you can just carry on with your life.
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
Developing Distributed High-performance Computing Capabilities of an Open Sci...Globus
COVID-19 had an unprecedented impact on scientific collaboration. The pandemic and its broad response from the scientific community has forged new relationships among public health practitioners, mathematical modelers, and scientific computing specialists, while revealing critical gaps in exploiting advanced computing systems to support urgent decision making. Informed by our team’s work in applying high-performance computing in support of public health decision makers during the COVID-19 pandemic, we present how Globus technologies are enabling the development of an open science platform for robust epidemic analysis, with the goal of collaborative, secure, distributed, on-demand, and fast time-to-solution analyses to support public health.
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfJay Das
With the advent of artificial intelligence or AI tools, project management processes are undergoing a transformative shift. By using tools like ChatGPT, and Bard organizations can empower their leaders and managers to plan, execute, and monitor projects more effectively.
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Globus
The U.S. Geological Survey (USGS) has made substantial investments in meeting evolving scientific, technical, and policy driven demands on storing, managing, and delivering data. As these demands continue to grow in complexity and scale, the USGS must continue to explore innovative solutions to improve its management, curation, sharing, delivering, and preservation approaches for large-scale research data. Supporting these needs, the USGS has partnered with the University of Chicago-Globus to research and develop advanced repository components and workflows leveraging its current investment in Globus. The primary outcome of this partnership includes the development of a prototype enterprise repository, driven by USGS Data Release requirements, through exploration and implementation of the entire suite of the Globus platform offerings, including Globus Flow, Globus Auth, Globus Transfer, and Globus Search. This presentation will provide insights into this research partnership, introduce the unique requirements and challenges being addressed and provide relevant project progress.
Understanding Globus Data Transfers with NetSageGlobus
NetSage is an open privacy-aware network measurement, analysis, and visualization service designed to help end-users visualize and reason about large data transfers. NetSage traditionally has used a combination of passive measurements, including SNMP and flow data, as well as active measurements, mainly perfSONAR, to provide longitudinal network performance data visualization. It has been deployed by dozens of networks world wide, and is supported domestically by the Engagement and Performance Operations Center (EPOC), NSF #2328479. We have recently expanded the NetSage data sources to include logs for Globus data transfers, following the same privacy-preserving approach as for Flow data. Using the logs for the Texas Advanced Computing Center (TACC) as an example, this talk will walk through several different example use cases that NetSage can answer, including: Who is using Globus to share data with my institution, and what kind of performance are they able to achieve? How many transfers has Globus supported for us? Which sites are we sharing the most data with, and how is that changing over time? How is my site using Globus to move data internally, and what kind of performance do we see for those transfers? What percentage of data transfers at my institution used Globus, and how did the overall data transfer performance compare to the Globus users?
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
In software engineering, the right architecture is essential for robust, scalable platforms. Wix has undergone a pivotal shift from event sourcing to a CRUD-based model for its microservices. This talk will chart the course of this pivotal journey.
Event sourcing, which records state changes as immutable events, provided robust auditing and "time travel" debugging for Wix Stores' microservices. Despite its benefits, the complexity it introduced in state management slowed development. Wix responded by adopting a simpler, unified CRUD model. This talk will explore the challenges of event sourcing and the advantages of Wix's new "CRUD on steroids" approach, which streamlines API integration and domain event management while preserving data integrity and system resilience.
Participants will gain valuable insights into Wix's strategies for ensuring atomicity in database updates and event production, as well as caching, materialization, and performance optimization techniques within a distributed system.
Join us to discover how Wix has mastered the art of balancing simplicity and extensibility, and learn how the re-adoption of the modest CRUD has turbocharged their development velocity, resilience, and scalability in a high-growth environment.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...informapgpstrackings
Keep tabs on your field staff effortlessly with Informap Technology Centre LLC. Real-time tracking, task assignment, and smart features for efficient management. Request a live demo today!
For more details, visit us : https://informapuae.com/field-staff-tracking/
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Anthony Dahanne
Les Buildpacks existent depuis plus de 10 ans ! D’abord, ils étaient utilisés pour détecter et construire une application avant de la déployer sur certains PaaS. Ensuite, nous avons pu créer des images Docker (OCI) avec leur dernière génération, les Cloud Native Buildpacks (CNCF en incubation). Sont-ils une bonne alternative au Dockerfile ? Que sont les buildpacks Paketo ? Quelles communautés les soutiennent et comment ?
Venez le découvrir lors de cette session ignite
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar
The European Union Agency for Law Enforcement Cooperation (Europol) has suffered an alleged data breach after a notorious threat actor claimed to have exfiltrated data from its systems. Infamous data leaker IntelBroker posted on the even more infamous BreachForums hacking forum, saying that Europol suffered a data breach this month.
The alleged breach affected Europol agencies CCSE, EC3, Europol Platform for Experts, Law Enforcement Forum, and SIRIUS. Infiltration of these entities can disrupt ongoing investigations and compromise sensitive intelligence shared among international law enforcement agencies.
However, this is neither the first nor the last activity of IntekBroker. We have compiled for you what happened in the last few days. To track such hacker activities on dark web sources like hacker forums, private Telegram channels, and other hidden platforms where cyber threats often originate, you can check SOCRadar’s Dark Web News.
Stay Informed on Threat Actors’ Activity on the Dark Web with SOCRadar!
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
A Comprehensive Look at Generative AI in Retail App Testing.pdfkalichargn70th171
Traditional software testing methods are being challenged in retail, where customer expectations and technological advancements continually shape the landscape. Enter generative AI—a transformative subset of artificial intelligence technologies poised to revolutionize software testing.
5. Making Software. Better.
Simple solutions to big business problems.
Equal Experts is a network of talented, experienced, software
consultants, specialising in agile delivery.
9. "Perfection Is Achieved Not When
There Is Nothing More to Add,
But When There Is Nothing Left to
Take Away”
Antoine de Saint-Exupéry | The Little Prince
29. Restructuring Patterns
● Decoupling API from implementation
● Horizontal vs. vertical slices
● Library as a service
● Reduce fan-out
● Configuration as a service
30. Restructuring Patterns
● Decoupling API from implementation
● Horizontal vs. vertical slices
● Library as a service
● Reduce fan-out
● Configuration as a service
37. Decoupling API from implementation
LIBRARY
API
LIBRARY
IMPL
ASSEMBLY
WEB
INTERFACE
38. Decoupling API from implementation
DI for IMPL
Use explicit wiring
LIBRARY
API
LIBRARY
IMPL
ASSEMBLY
WEB
INTERFACE
39. Decoupling API from implementation
WEB
INTERFACE
LIBRARY
IMPL
No conflict in run time
thanks to explicit wiring
ASSEMBLY
LIBRARY
API
LIBRARY
IMPL
40. Decoupling API from implementation
WEB
INTERFACE
LIBRARY
IMPL
ASSEMBLY
LIBRARY
API
LIBRARY
IMPL
41. Decoupling API from implementation
WEB
INTERFACE
LIBRARY
IMPL
ASSEMBLY
LIBRARY
API
42. Restructuring Patterns
● Decoupling API from implementation
● Horizontal vs. vertical slices
● Library as a service
● Reduce fan-out
● Configuration as a service
45. Horizontal vs. vertical slices
Persistence
Validation Front-end
ACCOUNT
COMMS
PAYMENT
ACCOUNT
COMMS
PAYMENT
ACCOUNT
COMMS
PAYMENT
Web
Service
46. Horizontal vs. vertical slices
End Goal
COMMS
PERSISTENCE
VALIDATION
FRONT-END
PAYMENT
PERSISTENCE
VALIDATION
FRONT-END
ACCOUNT
PERSISTENCE
VALIDATION
FRONT-END
Web
Service
47. Horizontal vs. vertical slices
Persistence
Validation Front-end
ACCOUNT
COMMS
PAYMENT
ACCOUNT
COMMS
PAYMENT
ACCOUNT
COMMS
PAYMENT
Web
Service
48. Horizontal vs. vertical slices
PAYMENT
PERSISTENCE
VALIDATION
FRONT-END
Persistence Validation Front-end
ACCOUNT
COMMS
PAYMENT
ACCOUNT
COMMS
PAYMENT
ACCOUNT
COMMS
PAYMENT
Web
Service
49. Horizontal vs. vertical slices
PAYMENT
PERSISTENCE
VALIDATION
FRONT-END
Persistence Validation Front-end
ACCOUNT
COMMS
PAYMENT
ACCOUNT
COMMS
PAYMENT
ACCOUNT
COMMS
PAYMENT
Web
Service
50. Horizontal vs. vertical slices
PAYMENT
PERSISTENCE
VALIDATION
FRONT-END
Persistence Validation Front-end
ACCOUNT
COMMS
ACCOUNT
COMMS
ACCOUNT
COMMS
Web
Service
51. Horizontal vs. vertical slices
COMMS
PERSISTENCE
VALIDATION
FRONT-END
PAYMENT
PERSISTENCE
VALIDATION
FRONT-END
Persistence Validation Front-end
ACCOUNT
COMMS
ACCOUNT
COMMS
ACCOUNT
COMMS
Web
Service
52. Horizontal vs. vertical slices
COMMS
PERSISTENCE
VALIDATION
FRONT-END
PAYMENT
PERSISTENCE
VALIDATION
FRONT-END
Persistence Validation Front-end
ACCOUNT
COMMS
ACCOUNT
COMMS
ACCOUNT
COMMS
Web
Service
53. Horizontal vs. vertical slices
COMMS
PERSISTENCE
VALIDATION
FRONT-END
PAYMENT
PERSISTENCE
VALIDATION
FRONT-END
Persistence Validation Front-end
ACCOUNT ACCOUNT ACCOUNT
Web
Service
54. Horizontal vs. vertical slices
ACCOUNTCOMMS
PERSISTENCE
VALIDATION
FRONT-END
PAYMENT
PERSISTENCE
VALIDATION
FRONT-END
Persistence Validation Front-end
ACCOUNT ACCOUNT ACCOUNT
Web
Service
PERSISTENCE
VALIDATION
FRONT-END
55. Horizontal vs. vertical slices
ACCOUNTCOMMS
PERSISTENCE
VALIDATION
FRONT-END
PAYMENT
PERSISTENCE
VALIDATION
FRONT-END
Persistence Validation Front-end
ACCOUNT ACCOUNT ACCOUNT
Web
Service
PERSISTENCE
VALIDATION
FRONT-END
56. Horizontal vs. vertical slices
COMMS
PERSISTENCE
VALIDATION
FRONT-END
PAYMENT
PERSISTENCE
VALIDATION
FRONT-END
ACCOUNT
PERSISTENCE
VALIDATION
FRONT-END
Web
Service
57. Restructuring Patterns
● Decoupling API from implementation
● Horizontal vs. vertical slices
● Library as a service
● Reduce fan-out
● Configuration as a service
59. Library as a service
Library SERVICE B
SERVICE C
SERVICE A
60. Library as a service
Goal
SERVICE B
SERVICE C
SERVICE A IT A
IT B
IT C
Library
Service
61. Library as a service
Library SERVICE B
SERVICE C
SERVICE A
62. Library as a service
Library SERVICE B
SERVICE C
SERVICE A IT A
IT B
IT C
63. Library as a service
Library
SERVICE B
SERVICE C
SERVICE A IT A
IT B
IT C
Library
Service
64. Library as a service
Library
SERVICE B
SERVICE C
SERVICE A IT A
IT B
IT C
Library
Service
65. Library as a service
Library
SERVICE B
SERVICE C
SERVICE A IT A
IT B
IT C
Library
Service
66. Library as a service
Library
SERVICE B
SERVICE C
SERVICE A IT A
IT B
IT C
Library
Service
67. Library as a service
SERVICE B
SERVICE C
SERVICE A IT A
IT B
IT C
Library
Service
68. Restructuring Patterns
● Decoupling API from implementation
● Horizontal vs. vertical slices
● Library as a service
● Reduce fan-out
● Configuration as a service
81. Restructuring Patterns
● Decoupling API from implementation
● Horizontal vs. vertical slices
● Library as a service
● Reduce fan-out
● Configuration as a service
84. Configuration as a service
Configuration
● Feature Flag
● Throttling Variable
● A/B Testing
● URLs to other systems
● …
● (for each environment!)
85. Configuration as a service
Configuration
● Feature Flag
● Throttling Variable
● A/B Testing
● URLs to other systems
● …
● (for each environment!)
Service Rebuild
● Compile
● Test Internal Logic
● Contract Tests
● Full Integration Tests
● Deploy
● Smoke Tests
86. Configuration as a service
Config items
Soft : can check in runtime (eg. feature flag)
Hard : need to check in startup (eg. DB connection)
94. Configuration as a service
Service
Soft
Config
Smoke Tests
Hard
Config
Soft
Config
Service
95. Configuration as a service
Service
Soft
Config
Smoke Tests
Hard
Config
Soft
Config
Service
96. Configuration as a service
Service
Smoke Tests
Hard
Config
Soft
Config
Service
97. Configuration as a service
Service
Smoke Tests
Soft
Config
Service
Hard
Config
Everything
Else
Deploy
98. Configuration as a service
Service
Smoke Tests
Soft
Config
Service
Hard
Config
Deploy
99. Restructuring Patterns
● Decoupling API from implementation
● Horizontal vs. vertical slices
● Library as a service
● Reduce fan-out
● Configuration as a service
105. Thank You
Twitter
@EqualExperts
LinkedIn
linkedin.com/company/equal-experts
UNITED KINGDOM
+44 203 603 7830
helloUK@equalexperts.com
Equal Experts UK Ltd
30 Brock Street
London NW1 3FG
INDIA
+91 20 6607 7763
helloIndia@equalexperts.com
Equal Experts India Private Ltd
Office No. 4-C
Cerebrum IT Park No. B3
Kumar City, Kalyani Nagar
Pune, 411006
Web
www.equalexperts.com
CANADA
+1 403 775 4861
helloCanada@equalexperts.com
Equal Experts Devices Inc
205 - 279 Midpark way S.E.
T2X 1M2
Calgary, Alberta
PORTUGAL
+351 211 378 414
helloPortugal@equalexperts.com
Equal Experts Portugal
Avenida Dom João II, Nº35
Edificio Infante 11ºA
1990-083 Parque das Nações
Lisboa – Portugal
& Equal Experts
USA
+1 866-943-9737
helloUSA@equalexperts.com
Equal Experts Inc
1460 Broadway
New York
NY 10036