Microservices vs. The First Law of Distributed Objects - GOTO Nights Chicago ...Phil Calçado
TALK #2: Microservices vs. The First Law of Object Design
We've been breaking systems and application into smaller components for a long time now. From Component-Based Design to Distributed Objects to SOA to what is today's preferred golden hammer: microservices.
One definition of microservices is that it is a flavor of SOA that emphasizes many specialize services versus a few more generalist ones. Often these microservices are so small that they take care of a single "object". Distributed objects aren't new to this industry, and in 2003, Martin Fowler wrote a classic article where he discusses several problems with this model, and proposes the First Law of Distributed Objects:
"Objects have been around for a while, and sometimes it seems that ever since they were created, folks have wanted to distribute them. However, distribution of objects, or indeed of anything else, has a lot more pitfalls than many people realize, especially when they're under the influence of vendors' cozy brochures. This article is about some of these hard lessons-lessons I've seen many of my clients learn the hard way... my First Law of Distributed Object Design: Don’t distribute your objects!"
Reinventing the wheel is nothing new in our field, but if microservices are meant to be small, how can we avoid the same problems from the past? What are the technologies, architectures, protocols, and practices we need in place to make sure that our microservices architecture isn't just the largest bowl of spaghetti this organization has ever cooked?
SPEAKER: Phil Calçado, Director of Software Engineering at DigitalOcean
Phil Calçado works at DigitalOcean, where he helps build the cloud for developers. Before that, he spent four years building the team and architecture behind SoundCloud's move from a monolith to microservices. He tweets at @pcalcado writes at http://philcalcado.com.
The Not-So-Straightforward Road From Microservices to ServerlessPhil Calçado
For the last ten years or so, many companies have focused on migrating from larger, monolithic systems and applications towards a specific style of Service-Oriented Architecture called Microservices. The promise was that these smaller, loosely-coupled, and independently developed components would increase productivity and safety for organizations, as large and complex business challenges can be broken down into smaller and simpler components.
However, even before most organizations were able to fully migrate to this new architecture and enjoy its promised benefits, a new iteration of cloud computing has been made available in the shape of Serverless platforms such as AWS Lambda, and Google Cloud and Microsoft Azure Functions.
Now lots of companies found themselves conflicted between abandoning their traditional microservices approach towards Serverless, often even before they have fully migrated to it from the legacy systems.
After leading successful Microservices adoption at SoundCloud and DigitalOcean, recently at Meetup I have faced the challenge of pivoting from a traditional monolith-to-microservices migration to a cloud-native platform.
In this talk, let's discuss the fundamental concepts, technologies, and practices behind Microservices and Serverless, and how a software architect used to distributed systems based on microservices needs to change their mindset and approach when adopting Serverless.
Three Years of Microservices at SoundCloud - Distributed Matters Berlin 2015Phil Calçado
SoundCloud is the largest repository of audio on the web, used by more than 200 million people every month, who upload more than 11 hours of audio every minute. Like so many others, we have migrated from a typical monolithic architecture to microservices. While the benefits brought by this style of SOA to our productivity and reliability are clear, the architecture required some non-obvious changes in the way we operate systems, and a way to tackle the overhead associated with having hundreds of small moving parts to serve every request. In this talk we’ll share the toolkit and strategy SoundCloud uses to keep its microservices explosion manageable. What do we do about the operations overhead? How to spread devops skills across teams to support the “you build it, you run it” vision? How to deal with breaking changes and asynchronous behaviours? How to deal with chatty interactions? Which protocol? How do I even get a diagram telling me how all this stuff is put together?
Microservices vs. The First Law of Distributed Objects - GOTO Nights Chicago ...Phil Calçado
TALK #2: Microservices vs. The First Law of Object Design
We've been breaking systems and application into smaller components for a long time now. From Component-Based Design to Distributed Objects to SOA to what is today's preferred golden hammer: microservices.
One definition of microservices is that it is a flavor of SOA that emphasizes many specialize services versus a few more generalist ones. Often these microservices are so small that they take care of a single "object". Distributed objects aren't new to this industry, and in 2003, Martin Fowler wrote a classic article where he discusses several problems with this model, and proposes the First Law of Distributed Objects:
"Objects have been around for a while, and sometimes it seems that ever since they were created, folks have wanted to distribute them. However, distribution of objects, or indeed of anything else, has a lot more pitfalls than many people realize, especially when they're under the influence of vendors' cozy brochures. This article is about some of these hard lessons-lessons I've seen many of my clients learn the hard way... my First Law of Distributed Object Design: Don’t distribute your objects!"
Reinventing the wheel is nothing new in our field, but if microservices are meant to be small, how can we avoid the same problems from the past? What are the technologies, architectures, protocols, and practices we need in place to make sure that our microservices architecture isn't just the largest bowl of spaghetti this organization has ever cooked?
SPEAKER: Phil Calçado, Director of Software Engineering at DigitalOcean
Phil Calçado works at DigitalOcean, where he helps build the cloud for developers. Before that, he spent four years building the team and architecture behind SoundCloud's move from a monolith to microservices. He tweets at @pcalcado writes at http://philcalcado.com.
The Not-So-Straightforward Road From Microservices to ServerlessPhil Calçado
For the last ten years or so, many companies have focused on migrating from larger, monolithic systems and applications towards a specific style of Service-Oriented Architecture called Microservices. The promise was that these smaller, loosely-coupled, and independently developed components would increase productivity and safety for organizations, as large and complex business challenges can be broken down into smaller and simpler components.
However, even before most organizations were able to fully migrate to this new architecture and enjoy its promised benefits, a new iteration of cloud computing has been made available in the shape of Serverless platforms such as AWS Lambda, and Google Cloud and Microsoft Azure Functions.
Now lots of companies found themselves conflicted between abandoning their traditional microservices approach towards Serverless, often even before they have fully migrated to it from the legacy systems.
After leading successful Microservices adoption at SoundCloud and DigitalOcean, recently at Meetup I have faced the challenge of pivoting from a traditional monolith-to-microservices migration to a cloud-native platform.
In this talk, let's discuss the fundamental concepts, technologies, and practices behind Microservices and Serverless, and how a software architect used to distributed systems based on microservices needs to change their mindset and approach when adopting Serverless.
Three Years of Microservices at SoundCloud - Distributed Matters Berlin 2015Phil Calçado
SoundCloud is the largest repository of audio on the web, used by more than 200 million people every month, who upload more than 11 hours of audio every minute. Like so many others, we have migrated from a typical monolithic architecture to microservices. While the benefits brought by this style of SOA to our productivity and reliability are clear, the architecture required some non-obvious changes in the way we operate systems, and a way to tackle the overhead associated with having hundreds of small moving parts to serve every request. In this talk we’ll share the toolkit and strategy SoundCloud uses to keep its microservices explosion manageable. What do we do about the operations overhead? How to spread devops skills across teams to support the “you build it, you run it” vision? How to deal with breaking changes and asynchronous behaviours? How to deal with chatty interactions? Which protocol? How do I even get a diagram telling me how all this stuff is put together?
Taking an agile approach to the digital workplaceJames Robertson
The new digital workplace is emerging within organisations as a result of a wave of digital change. Agile development methodologies are also accelerating the pace of development. Together they are transforming the workplace. See what this looks like in this presentation by James Robertson at KMWorld 2015 in Washington DC.
This is the slide deck from my keynote at the EA User Event in Brussels, September 2015. Micro-services and micro-services architecture are the next hype in software development. Websites and blogs are full of introducing posts, the first books are being written and the first conferences organized. There’s big promises of scalability, flexibility and replaceability of individual elements in your landscape. However, when you are knee deep in the mud as a software architect at an insurance, it is very hard to find help on how to design applications and components in a micro-services architecture. During this talk Sander will show how he used Enterprise Architect to model the micro services architecture, and will explain the difficulties and the lessons learned, using many real-life examples.
Multipathed, Multiplexed, Multilateral Transport Protocols - Decoupling trans...APNIC
Multipathed, Multiplexed, Multilateral Transport Protocols - Decoupling transport protocols from what's below, by Catherine Pearce.
A presentation given at APRICOT 2016’s APOPS Plenary 1 session on 22 February 2016.
Slide deck from my keynote at the Software Development 2020 Conference in Breda, The Netherlands, June 2015. Micro-services and micro-services architecture are the next hype in software development. Websites and blogs are full of introducing posts, the first books are being written and the first conferences organized. There’s big promises of scalability, flexibility and replaceability of individual elements in your landscape. However, when you are knee deep in the mud as a software architect at an insurance, it is very hard to find help on how to design applications and components in a micro-services architecture. During this talk Sander Hoogendoorn, discusses the long and winding road the insurance company where he’s acting as the lead software architect has taken to implement their business processes in a micro-landscape. Sander will show how this company is modeling requirements in a micro-landscape using smart use cases, and will explain the difficulties and the lessons learned, using many real-life examples.
There has been lots of buzz around Microservices over the last year, but there has often been a lack of clarity as to what Microservices are, or how to implement them well. I've been working to distill down the principles of Microservices to help ensure that we don't just end up repeating the mistakes we made during the last 20 years of service oriented architecture.
Designing and building a micro-services architecture. Stairway to heaven or a...Sander Hoogendoorn
Micro-services and micro-services architecture are the next hype in software development. Websites and blogs are full of introducing posts, the first books are being written and the first conferences organized. There’s big promises of scalability, flexibility and replaceability of individual elements in your landscape. However, when you are knee deep in the mud as a software architect at an insurance, it is very hard to find help on how to design applications and components in a micro-services architecture. During this talk Sander Hoogendoorn, discusses the long and winding road the insurance company where he’s acting as the lead software architect has taken to implement their business processes in a micro-landscape. Sander will show how this company is modeling requirements in a micro-landscape using smart use cases, and will explain the difficulties and the lessons learned, using many real-life examples.
Sitecore Digital Survivor Series - How Web and App Performance impacts Custom...Dynatrace
This is my deck from the recent Sitecore Digital Survivor Series on how site performance impacts customer experience. You can read a short summary and watch the webinar here: http://bit.ly/2bmXleq
IDC Keynote: The Seven Transformations IT Solution Providers Must ConfrontIngram Micro Cloud
The Third Platform of Computing (Cloud, Analytics, Mobile, Social) is making life both interesting and uncomfortable for IT solution providers. Cloud especially is forcing VARs, SIs, MSPs, and ISVs to re-think the way they do business. Join IDC to hear the seven key transformations that tech companies must go through to succeed in the Third Platform
Thirty months of microservices. Stairway to heaven or highway to hellSander Hoogendoorn
This is the deck of the talks on microservices I did at both Avisi's #ASAS2016 (Arnhem, NL), Microsoft's #TechDaysNL (Amsterdam, NL) and #GeeCon (Prague, Czech Republic) conferences in September and October 2016.
Microservices are the next hype. Websites are full of introducing posts, books are being written and conferences organized. There’s big promises of scalability and flexibility. However, when you are knee deep in mud as an architect, developer or tester, it’s hard to find out how to get there. Sander Hoogendoorn, independent craftsman and CTO of Klaverblad Insurances, discusses the long and winding road his projects, both greenfield and brownfield, have travelled. Sander will e.g. address polyglot persistence, DDD, bounded contexts, modeling HTTP/REST, continuous delivery and many lessons learned, using many real-life examples.
La Redoute Quality Engineering TransformationAntoine Craske
Accelerate is becoming a standard to drive DevOps implementation on the four key metrics.
We used the model to improve our pipelines over various increments, aligned with the DevOps principles. We act on various domains from methodology, organization, architecture to remove limiting factors along our software pipeline.
Multiple teams are now delivering multiple times per day with stability, a game-changer compared to our previous performance across teams. This talk shares the journey we have been taking, lessons learned and takeaways to apply in your context.
Common Anti-patterns that Impede a Successful Digital TransformationGautham Pallapa
Lean, Agile, and DevOps are being used as tools to drive digital transformations across companies. The focus is heavily on technology, and less on people and processes, as the silver bullet to realizing their outcomes. This results in some anti-patterns that impede success of a digital transformation.
In this session hosted by GitHub and Object Partners, I talk about the common transformational anti-patterns, and share approaches, experiments, and tips that could help.
the afterparty: refactoring after 100x hypergrowthPhil Calçado
PicPay is the largest digital wallet in Latin America. We offer peer-to-peer payments, BNPL, credit cards, personal loans, insurance, investing, trading, and other financial products to 60 million people and 5 million merchants, processing over $20 billion yearly.
But just three years ago, in 2019, PicPay was 30 engineers in a small office working on a single product for a few million users. Growing our product portfolio, team size, and the number of transactions by several orders of magnitude so quickly was as chaotic as you might imagine—but we've done it!
Our approach gave teams and engineers radical autonomy to choose the best tool, process, and technology for their area. This strategy was invaluable in handling hypergrowth, but as we stabilize as a business and product, we have realized that what took us here isn't what will keep us moving forward.
In this talk, let's explore the consequences of how we dealt with our hypergrowth phase and what are the changes and initiatives we have put in place to make sure that we keep growing and pushing the envelope—but at a manageable pace this time around.
Phil Calçado is the Global CTO at PicPay. Before PicPay, Phil was Senior Director of Engineering at SeatGeek, leading the team that built the live events platform used by 44 million people worldwide. He has also led the platform team at Meetup/WeWork, worked on Linkerd - the pioneering Service Mesh, and headed product engineering for DigitalOcean and SoundCloud, both pioneers in adopting Microservices architectures.
https://plus.qconferences.com/plus2022/presentation/afterparty-refactoring-after-100x-hypergrowth
don't try this at home: self-improvement as a senior leaderPhil Calçado
Presented at LeadingEng New York 2022 (https://leaddev.com/leadingeng-new-york/video/dont-try-home-how-practice-self-improvement-senior-leader)
--
Most of us have developed our expertise as engineers through a mix of literature and experimentation. The software industry moves at a higher speed than others because we can try and study complex, real-world systems in the comfort of our bedrooms and personal Github accounts.
When you become a leader, especially one who leads other leaders, things get a little more complicated. There are books, but they tend to contain generic advice. There are patterns, but the nature of the job makes it harder to identify when and how to apply them.
In this session, I want to walk through a few things that have worked for me when you don't have a lab to try things out. Let's explore processes, tools, and resources to continuously improve your skills and expertise when there is no StackOverflow and no coding dojos.
Phil Calçado is Global CTO at PicPay, the largest digital wallet in Latin America. He leads a team of more than 1,500 engineers building financial products for 60 million users and processing over four billion dollars yearly. Before PicPay, Phil was Senior Director of Engineering at SeatGeek, where he led the team that built the live events platform used by 44 million people worldwide. He also has led the platform team at Meetup/WeWork, worked on Linkerd - the pioneering Service Mesh, and headed product engineering for DigitalOcean and SoundCloud, both pioneers in the adoption of Microservices architectures.
More Related Content
Similar to From microservices to serverless - Chicago CTO Summit 2019
Taking an agile approach to the digital workplaceJames Robertson
The new digital workplace is emerging within organisations as a result of a wave of digital change. Agile development methodologies are also accelerating the pace of development. Together they are transforming the workplace. See what this looks like in this presentation by James Robertson at KMWorld 2015 in Washington DC.
This is the slide deck from my keynote at the EA User Event in Brussels, September 2015. Micro-services and micro-services architecture are the next hype in software development. Websites and blogs are full of introducing posts, the first books are being written and the first conferences organized. There’s big promises of scalability, flexibility and replaceability of individual elements in your landscape. However, when you are knee deep in the mud as a software architect at an insurance, it is very hard to find help on how to design applications and components in a micro-services architecture. During this talk Sander will show how he used Enterprise Architect to model the micro services architecture, and will explain the difficulties and the lessons learned, using many real-life examples.
Multipathed, Multiplexed, Multilateral Transport Protocols - Decoupling trans...APNIC
Multipathed, Multiplexed, Multilateral Transport Protocols - Decoupling transport protocols from what's below, by Catherine Pearce.
A presentation given at APRICOT 2016’s APOPS Plenary 1 session on 22 February 2016.
Slide deck from my keynote at the Software Development 2020 Conference in Breda, The Netherlands, June 2015. Micro-services and micro-services architecture are the next hype in software development. Websites and blogs are full of introducing posts, the first books are being written and the first conferences organized. There’s big promises of scalability, flexibility and replaceability of individual elements in your landscape. However, when you are knee deep in the mud as a software architect at an insurance, it is very hard to find help on how to design applications and components in a micro-services architecture. During this talk Sander Hoogendoorn, discusses the long and winding road the insurance company where he’s acting as the lead software architect has taken to implement their business processes in a micro-landscape. Sander will show how this company is modeling requirements in a micro-landscape using smart use cases, and will explain the difficulties and the lessons learned, using many real-life examples.
There has been lots of buzz around Microservices over the last year, but there has often been a lack of clarity as to what Microservices are, or how to implement them well. I've been working to distill down the principles of Microservices to help ensure that we don't just end up repeating the mistakes we made during the last 20 years of service oriented architecture.
Designing and building a micro-services architecture. Stairway to heaven or a...Sander Hoogendoorn
Micro-services and micro-services architecture are the next hype in software development. Websites and blogs are full of introducing posts, the first books are being written and the first conferences organized. There’s big promises of scalability, flexibility and replaceability of individual elements in your landscape. However, when you are knee deep in the mud as a software architect at an insurance, it is very hard to find help on how to design applications and components in a micro-services architecture. During this talk Sander Hoogendoorn, discusses the long and winding road the insurance company where he’s acting as the lead software architect has taken to implement their business processes in a micro-landscape. Sander will show how this company is modeling requirements in a micro-landscape using smart use cases, and will explain the difficulties and the lessons learned, using many real-life examples.
Sitecore Digital Survivor Series - How Web and App Performance impacts Custom...Dynatrace
This is my deck from the recent Sitecore Digital Survivor Series on how site performance impacts customer experience. You can read a short summary and watch the webinar here: http://bit.ly/2bmXleq
IDC Keynote: The Seven Transformations IT Solution Providers Must ConfrontIngram Micro Cloud
The Third Platform of Computing (Cloud, Analytics, Mobile, Social) is making life both interesting and uncomfortable for IT solution providers. Cloud especially is forcing VARs, SIs, MSPs, and ISVs to re-think the way they do business. Join IDC to hear the seven key transformations that tech companies must go through to succeed in the Third Platform
Thirty months of microservices. Stairway to heaven or highway to hellSander Hoogendoorn
This is the deck of the talks on microservices I did at both Avisi's #ASAS2016 (Arnhem, NL), Microsoft's #TechDaysNL (Amsterdam, NL) and #GeeCon (Prague, Czech Republic) conferences in September and October 2016.
Microservices are the next hype. Websites are full of introducing posts, books are being written and conferences organized. There’s big promises of scalability and flexibility. However, when you are knee deep in mud as an architect, developer or tester, it’s hard to find out how to get there. Sander Hoogendoorn, independent craftsman and CTO of Klaverblad Insurances, discusses the long and winding road his projects, both greenfield and brownfield, have travelled. Sander will e.g. address polyglot persistence, DDD, bounded contexts, modeling HTTP/REST, continuous delivery and many lessons learned, using many real-life examples.
La Redoute Quality Engineering TransformationAntoine Craske
Accelerate is becoming a standard to drive DevOps implementation on the four key metrics.
We used the model to improve our pipelines over various increments, aligned with the DevOps principles. We act on various domains from methodology, organization, architecture to remove limiting factors along our software pipeline.
Multiple teams are now delivering multiple times per day with stability, a game-changer compared to our previous performance across teams. This talk shares the journey we have been taking, lessons learned and takeaways to apply in your context.
Common Anti-patterns that Impede a Successful Digital TransformationGautham Pallapa
Lean, Agile, and DevOps are being used as tools to drive digital transformations across companies. The focus is heavily on technology, and less on people and processes, as the silver bullet to realizing their outcomes. This results in some anti-patterns that impede success of a digital transformation.
In this session hosted by GitHub and Object Partners, I talk about the common transformational anti-patterns, and share approaches, experiments, and tips that could help.
Similar to From microservices to serverless - Chicago CTO Summit 2019 (20)
the afterparty: refactoring after 100x hypergrowthPhil Calçado
PicPay is the largest digital wallet in Latin America. We offer peer-to-peer payments, BNPL, credit cards, personal loans, insurance, investing, trading, and other financial products to 60 million people and 5 million merchants, processing over $20 billion yearly.
But just three years ago, in 2019, PicPay was 30 engineers in a small office working on a single product for a few million users. Growing our product portfolio, team size, and the number of transactions by several orders of magnitude so quickly was as chaotic as you might imagine—but we've done it!
Our approach gave teams and engineers radical autonomy to choose the best tool, process, and technology for their area. This strategy was invaluable in handling hypergrowth, but as we stabilize as a business and product, we have realized that what took us here isn't what will keep us moving forward.
In this talk, let's explore the consequences of how we dealt with our hypergrowth phase and what are the changes and initiatives we have put in place to make sure that we keep growing and pushing the envelope—but at a manageable pace this time around.
Phil Calçado is the Global CTO at PicPay. Before PicPay, Phil was Senior Director of Engineering at SeatGeek, leading the team that built the live events platform used by 44 million people worldwide. He has also led the platform team at Meetup/WeWork, worked on Linkerd - the pioneering Service Mesh, and headed product engineering for DigitalOcean and SoundCloud, both pioneers in adopting Microservices architectures.
https://plus.qconferences.com/plus2022/presentation/afterparty-refactoring-after-100x-hypergrowth
don't try this at home: self-improvement as a senior leaderPhil Calçado
Presented at LeadingEng New York 2022 (https://leaddev.com/leadingeng-new-york/video/dont-try-home-how-practice-self-improvement-senior-leader)
--
Most of us have developed our expertise as engineers through a mix of literature and experimentation. The software industry moves at a higher speed than others because we can try and study complex, real-world systems in the comfort of our bedrooms and personal Github accounts.
When you become a leader, especially one who leads other leaders, things get a little more complicated. There are books, but they tend to contain generic advice. There are patterns, but the nature of the job makes it harder to identify when and how to apply them.
In this session, I want to walk through a few things that have worked for me when you don't have a lab to try things out. Let's explore processes, tools, and resources to continuously improve your skills and expertise when there is no StackOverflow and no coding dojos.
Phil Calçado is Global CTO at PicPay, the largest digital wallet in Latin America. He leads a team of more than 1,500 engineers building financial products for 60 million users and processing over four billion dollars yearly. Before PicPay, Phil was Senior Director of Engineering at SeatGeek, where he led the team that built the live events platform used by 44 million people worldwide. He also has led the platform team at Meetup/WeWork, worked on Linkerd - the pioneering Service Mesh, and headed product engineering for DigitalOcean and SoundCloud, both pioneers in the adoption of Microservices architectures.
As much as cloud-native applications and microservices help us be more productive and resilient and grow to unprecedented scales, they also bring an entirely new class of challenges. Let’s explore how the challenge of debugging applications has changed in a highly distributed world.
From: https://www.dashcon.io/agenda/ten-years-of-failing-microservices/
How are microservices in 2017 different from how we used to build them at the beginning of the decade?
More traditional Service-Oriented Architectures were defined by protocols and standards published and curated by industry consortiums. Knowledge of the architectural style usually called "microservices", on the other hand, is often in the form of patterns, cautionary tales, and tools extracted from real-world reports and software made available by organisations that have adopted this style.
Almost ten years since the first wave of such reports, the landscape has changed considerably. Many hard challenges from the past have been eased or completely solved, and a lot of the custom software created by the microservices pioneers have been made off-the-shelf open source software.
In this talk, Phil Calçado will contrast what we first found in the first generation of microservices architectures against the current generation's landscape. Let's talk about which previous common knowledge and patterns are deprecated, which ones are still active, and introduce some of the ones that have been recently added to our toolbox.
ScalaItaly 2015 - Your Microservice as a FunctionPhil Calçado
SoundCloud's microservice architecture is built mostly in Scala, using Finagle as its distributed systems workhorse. Finagle is an RPC system for the JVM, and it is based on a pipes-and-filters architecture that maps very nicely to functional programming concepts of higher-order functions and combinators. Over the past few years we have found that it is extremely useful to go even a step further and think of microservices as functions themselves. In this talk let's explore how SoundCloud uses Scala and Finagle, and how we started thinking of a microservices architecture as a special case of a functional system.
APIs: The Problems with Eating your Own Dog FoodPhil Calçado
SoundCloud's web and mobile properties are all built on top of our Public API. While building the user-interface atop a RESTful layer has proven itself a sound decision, the one-size-fits-all nature of a Public API is not ideal.
When it comes to data transfer and HTTP resource modelling, each client has their own needs, and in the end hacks and workarounds have to be implemented in both clients and servers. Feature development also becomes complicated, with coordination between multiple teams required for every single little feature.
SoundCloud is now moving to a different model, where clients have their own façade APIs, modelled after their core characteristics and needs. We are also using the architecture to break away from Conway’s Law and building more cross-functional, end-to-end teams.
From: http://gotocon.com/berlin-2013/presentation/APIs:%20The%20Problems%20with%20Eating%20your%20Own%20Dog%20food
To implement this, a lot of change in our architecture, tech stack and development processes were required. In this talk we will explore the challenges we had, the options we investigated and how ultimately SoundCloud decided to move forward.
(v2.0) Better Functional Design Through Test-Driven DevelopmentPhil Calçado
When writing Object-Oriented software these days, few developers doubt the benefits of TDD. The Software Craftsmanship movement even goes one step further, and says that it is just plain irresponsible to write software without this tool.
More and more projects are using Functional programming languages, though, and TDD is not so common in this side of the software development world. Maybe TDD doesn’t make sense outside Object-Oriented software?
After experimenting with the TDD mindset and Functional languages in real-world projects, my experience is that those also benefit a lot from using tests as design aid. In this talk, let’s investigate what is generally accepted as good practices in Functional Programming and how to use TDD to take us there, with examples in Clojure.
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
Utilocate offers a comprehensive solution for locate ticket management by automating and streamlining the entire process. By integrating with Geospatial Information Systems (GIS), it provides accurate mapping and visualization of utility locations, enhancing decision-making and reducing the risk of errors. The system's advanced data analytics tools help identify trends, predict potential issues, and optimize resource allocation, making the locate ticket management process smarter and more efficient. Additionally, automated ticket management ensures consistency and reduces human error, while real-time notifications keep all relevant personnel informed and ready to respond promptly.
The system's ability to streamline workflows and automate ticket routing significantly reduces the time taken to process each ticket, making the process faster and more efficient. Mobile access allows field technicians to update ticket information on the go, ensuring that the latest information is always available and accelerating the locate process. Overall, Utilocate not only enhances the efficiency and accuracy of locate ticket management but also improves safety by minimizing the risk of utility damage through precise and timely locates.
Software Engineering, Software Consulting, Tech Lead, Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Transaction, Spring MVC, OpenShift Cloud Platform, Kafka, REST, SOAP, LLD & HLD.
Mobile App Development Company In Noida | Drona InfotechDrona Infotech
Looking for a reliable mobile app development company in Noida? Look no further than Drona Infotech. We specialize in creating customized apps for your business needs.
Visit Us For : https://www.dronainfotech.com/mobile-application-development/
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppGoogle
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-fusion-buddy-review
AI Fusion Buddy Review: Key Features
✅Create Stunning AI App Suite Fully Powered By Google's Latest AI technology, Gemini
✅Use Gemini to Build high-converting Converting Sales Video Scripts, ad copies, Trending Articles, blogs, etc.100% unique!
✅Create Ultra-HD graphics with a single keyword or phrase that commands 10x eyeballs!
✅Fully automated AI articles bulk generation!
✅Auto-post or schedule stunning AI content across all your accounts at once—WordPress, Facebook, LinkedIn, Blogger, and more.
✅With one keyword or URL, generate complete websites, landing pages, and more…
✅Automatically create & sell AI content, graphics, websites, landing pages, & all that gets you paid non-stop 24*7.
✅Pre-built High-Converting 100+ website Templates and 2000+ graphic templates logos, banners, and thumbnail images in Trending Niches.
✅Say goodbye to wasting time logging into multiple Chat GPT & AI Apps once & for all!
✅Save over $5000 per year and kick out dependency on third parties completely!
✅Brand New App: Not available anywhere else!
✅ Beginner-friendly!
✅ZERO upfront cost or any extra expenses
✅Risk-Free: 30-Day Money-Back Guarantee!
✅Commercial License included!
See My Other Reviews Article:
(1) AI Genie Review: https://sumonreview.com/ai-genie-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
#AIFusionBuddyReview,
#AIFusionBuddyFeatures,
#AIFusionBuddyPricing,
#AIFusionBuddyProsandCons,
#AIFusionBuddyTutorial,
#AIFusionBuddyUserExperience
#AIFusionBuddyforBeginners,
#AIFusionBuddyBenefits,
#AIFusionBuddyComparison,
#AIFusionBuddyInstallation,
#AIFusionBuddyRefundPolicy,
#AIFusionBuddyDemo,
#AIFusionBuddyMaintenanceFees,
#AIFusionBuddyNewbieFriendly,
#WhatIsAIFusionBuddy?,
#HowDoesAIFusionBuddyWorks
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeAftab Hussain
Understanding variable roles in code has been found to be helpful by students
in learning programming -- could variable roles help deep neural models in
performing coding tasks? We do an exploratory study.
- These are slides of the talk given at InteNSE'23: The 1st International Workshop on Interpretability and Robustness in Neural Software Engineering, co-located with the 45th International Conference on Software Engineering, ICSE 2023, Melbourne Australia
Launch Your Streaming Platforms in MinutesRoshan Dwivedi
The claim of launching a streaming platform in minutes might be a bit of an exaggeration, but there are services that can significantly streamline the process. Here's a breakdown:
Pros of Speedy Streaming Platform Launch Services:
No coding required: These services often use drag-and-drop interfaces or pre-built templates, eliminating the need for programming knowledge.
Faster setup: Compared to building from scratch, these platforms can get you up and running much quicker.
All-in-one solutions: Many services offer features like content management systems (CMS), video players, and monetization tools, reducing the need for multiple integrations.
Things to Consider:
Limited customization: These platforms may offer less flexibility in design and functionality compared to custom-built solutions.
Scalability: As your audience grows, you might need to upgrade to a more robust platform or encounter limitations with the "quick launch" option.
Features: Carefully evaluate which features are included and if they meet your specific needs (e.g., live streaming, subscription options).
Examples of Services for Launching Streaming Platforms:
Muvi [muvi com]
Uscreen [usencreen tv]
Alternatives to Consider:
Existing Streaming platforms: Platforms like YouTube or Twitch might be suitable for basic streaming needs, though monetization options might be limited.
Custom Development: While more time-consuming, custom development offers the most control and flexibility for your platform.
Overall, launching a streaming platform in minutes might not be entirely realistic, but these services can significantly speed up the process compared to building from scratch. Carefully consider your needs and budget when choosing the best option for you.
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
Artificia Intellicence and XPath Extension FunctionsOctavian Nadolu
The purpose of this presentation is to provide an overview of how you can use AI from XSLT, XQuery, Schematron, or XML Refactoring operations, the potential benefits of using AI, and some of the challenges we face.
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
Atelier - Innover avec l’IA Générative et les graphes de connaissancesNeo4j
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Allez au-delà du battage médiatique autour de l’IA et découvrez des techniques pratiques pour utiliser l’IA de manière responsable à travers les données de votre organisation. Explorez comment utiliser les graphes de connaissances pour augmenter la précision, la transparence et la capacité d’explication dans les systèmes d’IA générative. Vous partirez avec une expérience pratique combinant les relations entre les données et les LLM pour apporter du contexte spécifique à votre domaine et améliorer votre raisonnement.
Amenez votre ordinateur portable et nous vous guiderons sur la mise en place de votre propre pile d’IA générative, en vous fournissant des exemples pratiques et codés pour démarrer en quelques minutes.
12. @pcalcado - philcalcado.com
What language?
How to deploy?
How to monitor?
How to alert?
What framework?
Do we need to
worry about
compliance?
Which team owns it?