PHP isn't sexy anymore and that's why we love it!
I'll share with you a story of mature language that drives huge businesses, generating billions of dollars in revenue. At Wayfair we use mostly PHP and we try to stay pragmatic about it, avoiding dogmas by always evaluating pros and cons of our decisions. Keeping things simple with 1000+ engineers isn't easy. During the talk I'll show you our magic formula and insights that will make your decisions more pragmatic, helping you run your own business more efficiently and focus on things that matter most.
In every successful technology businesses Jeff has worked in, the key challenge has been understanding how to scale technology and when to tackle the technical debt that inevitably accrues as a company runs ever faster and faster in pursuit of its business objectives. Jeff draws on his experience to help you understand what challenges emerge as a company moves from a Developer Centric environment to become more business focused. How can you get the business people to have influence on a developer centric environment? How can you manage the challenges that marketing will present?! What principles can you apply to be aware of problems early? How do you trade Agile Practioners vs Architectural Astronauts in a fast growing business? What are the technical debt trade-offs, what problems can you buy yourself out of? What problems will kill you if you don’t move now?
You’re already selling ahead of your roadmap and your dev team is getting pretty big. Trish Khoo outlines two approaches to keeping pace and quality high without hiring an army, drawing on a decade of software testing at Campaign Monitor, Google and Microsoft.
Agile dideliu mastu. NFQ. "Agile pagal HomeToGo, arba receptas technologijų s...Agile Lietuva
Ypač spartus produkto vystymo tempas ir diegimai į production aplinką kas 10 minučių. 0 testuotojų, tačiau sistemos uptime - 99.99%. 0 projektų vadovų, bet didelės produkto sprendimų priėmimo galios yra IT specialistų rankose. Visa tai mums yra įprasta ir savaime suprantama. Pasidalinsiu HomeToGo patirtimi, kaip išlikti greitiems ir efektyviems sparčiai augančioje organizacijoje.
In every successful technology businesses Jeff has worked in, the key challenge has been understanding how to scale technology and when to tackle the technical debt that inevitably accrues as a company runs ever faster and faster in pursuit of its business objectives. Jeff draws on his experience to help you understand what challenges emerge as a company moves from a Developer Centric environment to become more business focused. How can you get the business people to have influence on a developer centric environment? How can you manage the challenges that marketing will present?! What principles can you apply to be aware of problems early? How do you trade Agile Practioners vs Architectural Astronauts in a fast growing business? What are the technical debt trade-offs, what problems can you buy yourself out of? What problems will kill you if you don’t move now?
You’re already selling ahead of your roadmap and your dev team is getting pretty big. Trish Khoo outlines two approaches to keeping pace and quality high without hiring an army, drawing on a decade of software testing at Campaign Monitor, Google and Microsoft.
Agile dideliu mastu. NFQ. "Agile pagal HomeToGo, arba receptas technologijų s...Agile Lietuva
Ypač spartus produkto vystymo tempas ir diegimai į production aplinką kas 10 minučių. 0 testuotojų, tačiau sistemos uptime - 99.99%. 0 projektų vadovų, bet didelės produkto sprendimų priėmimo galios yra IT specialistų rankose. Visa tai mums yra įprasta ir savaime suprantama. Pasidalinsiu HomeToGo patirtimi, kaip išlikti greitiems ir efektyviems sparčiai augančioje organizacijoje.
My slides from #AppSecUSA 2013. If you want to help, please join the Developer Guide mail list (https://lists.owasp.org/mailman/listinfo/owasp-guide) and say hi. We have a Git Hub Repo which you can find from our project page.
Gwt create2013 Frankfurt: How we built a million dollar business with GWTinfoqafe
QAFE stands for Quality Application Framework for Enterprises. It was developed by Java and Oracle engineers to modernize Oracle Forms, and at the same time to create a modern platform for new business application development. QAFE separated the business logic from the presentation layer. Therefore, as the web evolves, developers do not have to rewrite their applications: because the QAFE engine, with the help of GWT and other toolkits, renders their logic to any frontend.
http://gwtcreate.com/#agenda-eu_room1_event10
http://www.qafe.com
Continuous Delivery Will Make or Break Your ProductAdam Zolyak
Your product doesn't matter if you can't get it into the hands of your users. And once in their hands, it does't matter if you can't quickly detect and respond to feedback and usage patterns to realize the value of these opportunities. Product organizations need to be able to Continuously Deliver their product - shipping small valuable increments to users, gathering feedback, and iterating on opportunities.
In recent years, there have been many silver bullets to enable Continuous Delivery - practices such as Lean Startup, Agile, LeanUx, ChatOps, and DevOps have promised to help ship better products faster while responding more quickly to your users. And tools, frameworks, programming languages, containers, and microservices have promised to reduce the effort and complexity to do so. So do you really need all of these things? And how to they all fit together?
To be an effective Product Manager, it's essential to understand the role technical practices and tools to enable the Continuous Delivery of your product. As the keeper of value and priority, Product Managers often decide between product and technical investments. This session is for Product Managers and leadership who want to gain empathy and examples of why balancing product, process, and technical investments are essential to creating a great product that users love!
Shared through the perspective and stories of a Product Manager on the CA Agile Central release train, this session explores how technical practices and tools are essential to enabling Continuous Delivery - shipping value daily, tighten feedback cycles, and more quickly reacting to opportunities.
Navvia is always looking for ways to improve how we do things and we’ve come to see DevOps as our compass on the road to continual improvement. However, DevOps means different things to different people.
To our company, it has become the rallying cry for organizational change. It is the standard that leads us on a path towards better alignment across teams, enhanced agility, higher quality and the elimination of waste.
What you will learn:
- Why Navvia embarked on DevOps
- An overview of DevOps including common misconceptions
- A case study entitled “a tale of two apps”
- How Navvia is implementing DevOps
- What we’ve learned so far
It’s an exciting journey with the destination being improved customer experience, higher rates of innovation and a faster path to business value.
There are many excellent courses, books and videos that can help you learn Agile and Scrum, but they all tend to ignore some common challenges teams run into. For example, non-functional requirements. How should we deal with them? Technical stories are also a big challenge. Good luck finding concrete, unbiased information on the pros and cons of the different approaches. Forecasting is another great example. How do you estimate or forecast an entire project?
This session will cover a number of these "elephants" in the room and provide concrete and unbiased advise on how to deal with them. All recommendations are based on real-world experiences and will include an honest discussion of relevant pros and cons.
Moving forward in your DevOps journey—What's your next step after CA World?CA Technologies
A perspective from within CA Technologies on where to start and how to progress in your DevOps journey to ultimately become successful in today's application economy.
For more information on DevOps solutions from CA Technologies, please visit: http://bit.ly/1wbjjqX
NORCAT Entrepreneurship 101 - "Product Development" featuring Dave Peres & Ro...NORCAT
Dave Peres and Rob Patterson (co-owners, Minalytix) discuss what product development is, the typical development process, development models and their experiences when building their company.
Project Management Software on Salesforce Platform IIAvandel Inc
Earn This is the brainchild of Mehmet Ergun, who is a Salesforce and AppExchange Expert and has ran multimillion dollar projects in various high profile firms in defense and IT consultancy sectors. Earn This modules cover full project life cycle from proposal submission to delivery. Earn This is built 100% Native on Salesforce.com platform and comes with rich set of platform specific features as well.
Beckers Fabrication, Industrial Printing Cassie Allen
Contact me directly for a quote. Becker's Fabrication 35+ years printing industry experience specializing in the custom manufacture of:
Labels - roll labels, sheet labels, decals, domed labels, variable data labels, UL labels (Part of UL's ALSP program)
Overlays - graphic overlays, controller overlays
Membrane Switches - (Becker's offers full membrane production in Yorba Linda, CA with an Engineer on staff. If you require a low-cost labor option overseas for your membranes, we can manage production for you through our parts management program using a combination our low-cost labor partner vendor and Becker's when needed as a back-up to ensure on-time delivery)
Gaskets, Die-cut parts & more www.beckersfab.com
We look forward to working with you and providing you the service you deserve!
We will go over the motivations for wix.com R&D to move to a CI/CD/TDD model, how the model was implemented and the impact on Wix R&D. We will cover the tools used (developed in-house and 3rd party), change in methodologies, what we have learned during the transformation and the unexpected change in working with product and the rest of the company.
Presented in the Continuous Delivery track at DevOps Con Israel 2013
My slides from #AppSecUSA 2013. If you want to help, please join the Developer Guide mail list (https://lists.owasp.org/mailman/listinfo/owasp-guide) and say hi. We have a Git Hub Repo which you can find from our project page.
Gwt create2013 Frankfurt: How we built a million dollar business with GWTinfoqafe
QAFE stands for Quality Application Framework for Enterprises. It was developed by Java and Oracle engineers to modernize Oracle Forms, and at the same time to create a modern platform for new business application development. QAFE separated the business logic from the presentation layer. Therefore, as the web evolves, developers do not have to rewrite their applications: because the QAFE engine, with the help of GWT and other toolkits, renders their logic to any frontend.
http://gwtcreate.com/#agenda-eu_room1_event10
http://www.qafe.com
Continuous Delivery Will Make or Break Your ProductAdam Zolyak
Your product doesn't matter if you can't get it into the hands of your users. And once in their hands, it does't matter if you can't quickly detect and respond to feedback and usage patterns to realize the value of these opportunities. Product organizations need to be able to Continuously Deliver their product - shipping small valuable increments to users, gathering feedback, and iterating on opportunities.
In recent years, there have been many silver bullets to enable Continuous Delivery - practices such as Lean Startup, Agile, LeanUx, ChatOps, and DevOps have promised to help ship better products faster while responding more quickly to your users. And tools, frameworks, programming languages, containers, and microservices have promised to reduce the effort and complexity to do so. So do you really need all of these things? And how to they all fit together?
To be an effective Product Manager, it's essential to understand the role technical practices and tools to enable the Continuous Delivery of your product. As the keeper of value and priority, Product Managers often decide between product and technical investments. This session is for Product Managers and leadership who want to gain empathy and examples of why balancing product, process, and technical investments are essential to creating a great product that users love!
Shared through the perspective and stories of a Product Manager on the CA Agile Central release train, this session explores how technical practices and tools are essential to enabling Continuous Delivery - shipping value daily, tighten feedback cycles, and more quickly reacting to opportunities.
Navvia is always looking for ways to improve how we do things and we’ve come to see DevOps as our compass on the road to continual improvement. However, DevOps means different things to different people.
To our company, it has become the rallying cry for organizational change. It is the standard that leads us on a path towards better alignment across teams, enhanced agility, higher quality and the elimination of waste.
What you will learn:
- Why Navvia embarked on DevOps
- An overview of DevOps including common misconceptions
- A case study entitled “a tale of two apps”
- How Navvia is implementing DevOps
- What we’ve learned so far
It’s an exciting journey with the destination being improved customer experience, higher rates of innovation and a faster path to business value.
There are many excellent courses, books and videos that can help you learn Agile and Scrum, but they all tend to ignore some common challenges teams run into. For example, non-functional requirements. How should we deal with them? Technical stories are also a big challenge. Good luck finding concrete, unbiased information on the pros and cons of the different approaches. Forecasting is another great example. How do you estimate or forecast an entire project?
This session will cover a number of these "elephants" in the room and provide concrete and unbiased advise on how to deal with them. All recommendations are based on real-world experiences and will include an honest discussion of relevant pros and cons.
Moving forward in your DevOps journey—What's your next step after CA World?CA Technologies
A perspective from within CA Technologies on where to start and how to progress in your DevOps journey to ultimately become successful in today's application economy.
For more information on DevOps solutions from CA Technologies, please visit: http://bit.ly/1wbjjqX
NORCAT Entrepreneurship 101 - "Product Development" featuring Dave Peres & Ro...NORCAT
Dave Peres and Rob Patterson (co-owners, Minalytix) discuss what product development is, the typical development process, development models and their experiences when building their company.
Project Management Software on Salesforce Platform IIAvandel Inc
Earn This is the brainchild of Mehmet Ergun, who is a Salesforce and AppExchange Expert and has ran multimillion dollar projects in various high profile firms in defense and IT consultancy sectors. Earn This modules cover full project life cycle from proposal submission to delivery. Earn This is built 100% Native on Salesforce.com platform and comes with rich set of platform specific features as well.
Beckers Fabrication, Industrial Printing Cassie Allen
Contact me directly for a quote. Becker's Fabrication 35+ years printing industry experience specializing in the custom manufacture of:
Labels - roll labels, sheet labels, decals, domed labels, variable data labels, UL labels (Part of UL's ALSP program)
Overlays - graphic overlays, controller overlays
Membrane Switches - (Becker's offers full membrane production in Yorba Linda, CA with an Engineer on staff. If you require a low-cost labor option overseas for your membranes, we can manage production for you through our parts management program using a combination our low-cost labor partner vendor and Becker's when needed as a back-up to ensure on-time delivery)
Gaskets, Die-cut parts & more www.beckersfab.com
We look forward to working with you and providing you the service you deserve!
We will go over the motivations for wix.com R&D to move to a CI/CD/TDD model, how the model was implemented and the impact on Wix R&D. We will cover the tools used (developed in-house and 3rd party), change in methodologies, what we have learned during the transformation and the unexpected change in working with product and the rest of the company.
Presented in the Continuous Delivery track at DevOps Con Israel 2013
Data Science and Enterprise Engineering with Michael Finger and Chris RobisonDatabricks
How Data Scientists and Engineers work in tandem to achieve real-time personalization at Overstock
Personalizing online experiences for users is nothing new, but real-time personalization requires sub-second speed and close collaboration between data scientists and enterprise engineers.
Like the hands on a clock, data scientists and enterprise engineers have shifted their focus from hour- hand quickness to minute-hand speeds with a craving to take advantage of each tick of the second hand and personalize in real-time. Previously, daily activities were consumed on improving customers’ experiences tomorrow. Workflows ran overnight when on perm resources were not being tasked. The focus was on the-day-before jobs, always inching forward 24-hours behind.
Since then, we have shifted to hourly jobs and even to tasks that run every five minutes. Finally, we have been personalizing user experiences within the same day and even during the same session. But could we personalize these experiences instantly, immediately, and in real-time? What would that require? What does it look like? Michael Finger and Chris Robinson explore how data scientists and engineers are working in tandem to achieve real-time personalization at Overstock.com
In the world of agile, there is theory and then there is practice. We like to talk about self-organizing teams, asynchronous execution, BDD, TDD, and emergent architecture. We also talk about cross-functional teams: how analysts, testers, architects, technical writers, and UX designers belong on the same team, right next to programmers. It all sounds nice in theory, but how does this work in reality? What do these people actually do? How do they interact? What does it look like? Is there really a pragmatic way to make this work?
In this simulation, a cross-functional team will actually build a piece of software. Every specialist will have a hand in the process. Every specialist will also act as a generalist. Everyone will add value. And as a team, we’ll get something DONE.
This is your opportunity to see agile development in practice, and to bridge the gap between what agilists say and what teams do. And it’s not as new or as difficult as you think – affinity between testers, BA’s, coders, and other team members has really been at the root of effective development practices all along. Let’s just finally acknowledge that it works, demonstrate its capabilities, and encourage it going forward.
This IS agile development.
The way how we help customers at ASPgems to do their software development projects in order to better accomplish their business objective in the Digital World.
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps StoryGene Kim
Re-imagining Hiscox IT: A DevOps Story
Jonathan Fletcher, Enterprise Architect & Platform Services lead, Hiscox
Description:
DevOps at Hiscox is a journey without an obvious destination! Come and hear about why this is so important to them and how its redefining much of what they do. In this session, we'll examine some practises for making a start with DevOps and what it's like to be the annoying guy that's driving things forward.
DevOps Enterprise Summit London 2016
Patching is Your Friend in the New World Order of EPM and ERP CloudDatavail
Historically, patching was an IT effort to stay on the support path or remove vulnerabilities. Today, in the EPM Cloud market, patching is so much more. This presentation will review several case studies of how clients received free capacities in their patches. Be a hero and make business change.
Personal customer experiences are and will be more and more vital. People to people, but also people to machine. Today, there are several providers of the same services, and the new ones are faster, more flexible, and more personalized in their communications with their customers & users. How do we ensure that we provide the right information to our employees as well as to our customers so they can better serve and increase customer satisfaction?
This webinar will focus on how you as an organization will have to restructure, rethink and redesign your technological platform to support increasing employee- and customer demands.
Key takeaways:
Holistic understanding of how to make a successful cloud transition
Learn why modern organizations excel in customer treatment, productivity, flexibility, and agility
High-level architecture and how and why DevOps changes organizations
It is often not intuitive to use agile and lean startup thinking in the world of big data and analytics. You can feel far removed from users and customers and your products often have to enable people to answer open-ended questions to help solve complex business problems. Often you are the engine room of very large enterprises. We will discuss techniques and practices that we can use to stay agile under these conditions.
Please note, this talk focuses more on ways of working than technical aspects.
Target Audience: People in data-centric teams (warehousing, BI, analytics) or anyone with an interest in agile principles being applied.
Requirements to Include in a Digital Transformation RFPNuxeo
The days of modernizing legacy information systems by replacing like for like are behind us. Today’s technology has more to offer than ever before, and business value is no longer derived from doing what you have always done. This session shares how to create your next Request for Proposal (RFP) to reflect your current modernization strategy and to give you the best possible outcome.
Explore how to create an RFP that gets the best from:
- Platform vs Product
- AI Innovations
- Continuous Innovation
- And Much More
Yetizen (https://www.linkedin.com/company/yetizen/about/) was a gaming incubator that existed in San Francisco, roughly between 2011 and 2015. I thought it was an interesting experiment, and was happy to give a series of talks there, and advise the portfolio companies.
This talk, from 2013, is about what's involved in being a platform vendor-- a third party whose service is relied up by applications. From the fact that your customers (application companies) don't really trust you to the fact that they make unreasonable demands to the fact that platforms and services are architected differently from applications; it's all in here.
The business case for contributing codeZivtech, LLC
In the Drupal community we tend to talk about committing code to our public spaces (drupal.org, but also github) in terms of "contributing" and "contributions", and while much of it can be seen in that light, there are actually very strong business reasons for publishing your code and/or attempting to get your code changes committed to the open source project that you are working on.
We will be looking at several documents from the U.S. Military detailing their recommendations for contracting Open Source Software services, and will use those as a jumping off point to discuss the many benefits of contributing code. Some of the business reasons for public publishing we'll explore will include:
* The power of peer review. With enough eyes, all bugs are shallow, and with only a few eyes the stupidity knows no depths!
* Fork you! The costs associated with "hacking" both Drupal core and contrib modules and base themes.
* Take my code, please! Cost savings from committing patches.
* Professionals publish or perish. Using code commits as marketing towards clients or potential hires.
* It's so easy, even a child(ish person) could do it! How you can easily integrate patching into your development workflow.
This session will also include a walk through of how Zivtech handles code review, patches, and deployment processes and you will hopefully walk away convinced that all of your in-house and out-sourced developers should be publicly committing their work.
Jd edwards upgrade roundtable at innovate15 empire merchants case studyNERUG
An in-depth, interactive session addressing real world scenarios and the challenges that are often faced during an upgrade. Hear from customer and other "experts" who will share experiences, best practices and lessons learned and help eliminate "the gotchas!" If you’re planning or contemplating an upgrade, this session provides a great opportunity to understand what lies ahead -- and be much more prepared!
Saudi Arabia stands as a titan in the global energy landscape, renowned for its abundant oil and gas resources. It's the largest exporter of petroleum and holds some of the world's most significant reserves. Let's delve into the top 10 oil and gas projects shaping Saudi Arabia's energy future in 2024.
About
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
• Remote control: Parallel or serial interface.
• Compatible with MAFI CCR system.
• Compatible with IDM8000 CCR.
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
• Easy in configuration using DIP switches.
Technical Specifications
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
Key Features
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
• Remote control: Parallel or serial interface
• Compatible with MAFI CCR system
• Copatiable with IDM8000 CCR
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
Application
• Remote control: Parallel or serial interface.
• Compatible with MAFI CCR system.
• Compatible with IDM8000 CCR.
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
• Easy in configuration using DIP switches.
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Dr.Costas Sachpazis
Terzaghi's soil bearing capacity theory, developed by Karl Terzaghi, is a fundamental principle in geotechnical engineering used to determine the bearing capacity of shallow foundations. This theory provides a method to calculate the ultimate bearing capacity of soil, which is the maximum load per unit area that the soil can support without undergoing shear failure. The Calculation HTML Code included.
Explore the innovative world of trenchless pipe repair with our comprehensive guide, "The Benefits and Techniques of Trenchless Pipe Repair." This document delves into the modern methods of repairing underground pipes without the need for extensive excavation, highlighting the numerous advantages and the latest techniques used in the industry.
Learn about the cost savings, reduced environmental impact, and minimal disruption associated with trenchless technology. Discover detailed explanations of popular techniques such as pipe bursting, cured-in-place pipe (CIPP) lining, and directional drilling. Understand how these methods can be applied to various types of infrastructure, from residential plumbing to large-scale municipal systems.
Ideal for homeowners, contractors, engineers, and anyone interested in modern plumbing solutions, this guide provides valuable insights into why trenchless pipe repair is becoming the preferred choice for pipe rehabilitation. Stay informed about the latest advancements and best practices in the field.
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
PHP + Business = Money!
1. PHP + Business = Money!
Martin Hlavac @m_hlavac
Sr. Software Engineer at Wayfair
2. 2
• Founded in 2002
• Racks and Stands
• 200+ stores by 2011
- cookware.com
- strollers.com
- …
• wayfair.com in 2012
• Scale!
Wayfair
Racks and Stands
3. 3
• 9 500 000+ active customers
• $1 100 000 000+ last quarter revenue
• $3 400 000 000+ annual revenue
• 1 000+ engineers
• Runs mostly on PHP
Wayfair
Some numbers
4. 4
A story from my life
The story
The typical software engineering project
5. 5
• A great idea
The story
The typical software engineering project
6. 6
The story
The typical software engineering project
• A great idea
• Expectation of huge business impact
- A lot of money, satisfied customers, extendable
7. 7
The story
The typical software engineering project
• A great idea
• Expectation of huge business impact
- A lot of money, satisfied customers, extendable
• Developed in 90 days
- Scalable, extensible, test covered, shiny and modern
8. 8
The story
The typical software engineering project
• A great idea
• Developed in 90 days
- Scalable, extensible, test covered, shiny and modern
• Expectation of huge business impact
- A lot of money, satisfied customers, extendable in the future
9. 9
The story
The typical software engineering project
• A great idea
• Developed in 90 days
- Scalable, extensible, test covered, shiny and modern
• Expectation of huge business impact
- A lot of money, satisfied customers, extendable in the future
10. 10
The story
The typical software engineering project
• A great idea
• Developed in 90 days
- Scalable, extensible, test covered, shiny and modern
• Expectation of huge business impact
- A lot of money, satisfied customers, extendable in the future
11. 11
The story
The typical software engineering project
• A great idea
• Developed in 90 days
- Scalable, extensible, test covered, shiny and modern
• Expectation of huge business impact
- A lot of money, satisfied customers, extendable in the future
12. 12
The story
The typical software engineering project
• A great idea
• Developed in 90 days
- Scalable, extensible, test covered, shiny and modern
• Expectation of huge business impact
- A lot of money, satisfied customers, extendable in the future
14. 14
The story
The typical software engineering project
• A great idea
- Wrong assumptions
- No validation
• Expectation of huge business impact
- Gut feeling that took 90 days to check
- Negative impact -> no business -> no money
• Developed in 90 days
- Took too long
- Extensible, scalable, modern and shiny
18. 18
Let’s look at it again
What could have we done differently
• Can we validate the idea without engineering?
• Implement in one day with hardcoded ugly hack?
• Small change to bring the value back?
• Quickly switch on/off?
• Iterate and validate before it’s fully finished?
20. 20
Feedback is one of the most important things
You simply can’t know things work until you try them out
• Release Early, Then Iterate Like Hell
• Faster feedback you have, better decisions you can do
• Any idea might be wrong, or not working anymore
- Airbnb (airbedandbreakfast)
- Facebook (TheFacebook)
- Wayfair (Rack and Stands)...
- are all adapting all the time
21. 21
The first ingredient
You need to be fast, people care about problems you solve, not how you solve them
Speed to market
22. 22
The second ingredient
Staying pragmatic
• Google, Netflix, Facebook, Slack, etc… have different needs
• We are Wayfair
- Business focused
- Iterate fast, validate assumptions and clean later
- Code that supports billions of dollars business
- Humans, break stuff every day
◦ dozens deployments
◦ hundreds of changes
23. 23
Staying pragmatic is hard
It’s easy to fall for dogmas
• You are YOU
• Stay focused on your business
• Validate pros and cons
• Validate rewards and risks
• Iterate
24. 24
Pros and Cons
How to do it?
• Write down pros and cons of your suggestions
- known areas as pros
- unknown areas as cons
◦ “should” and “might” are very dangerous words
- how many people are experienced with it
- how stable the technology is
25. 25
• Mature - not sexy for engineers anymore :(
- No hype anymore
• Slower than JiT/AoT Languages
• Requires more memory
• Weak typing
• Confusing function parameters
• Configuration has huge effect on runtime
We love PHP
It isn’t sexy anymore, for engineers
• Mature - sexy for business
- A lot of engineers, huge community, tooling
- Known bugs
• Allows fast changes
- Change file, refresh
- Deploy just one file (fixes critical bug
immediately)
- Super fast when you start new project
- Easy for people to start with PHP (Wordpress
hacks)
• Crazy scalable
- It dies!
- Run thousands of applications on single server
• Focused on web development
- Dealing with inputs, sessions, cookies
• Dynamic typing
- Array manipulation
- Consuming APIs
26. 26
We love monolith
It has pros and cons
• Simple reviews
- Review all applications in single diff
• Synchronized deploy to multiple applications
- Do changes to multiple application and deploy at
the same time.
• No versioning hell
- It’s all master
• Easy to do changes
- IDE helps you find all usages, across applications
• Everyone can do changes across applications
- No waiting for other teams
• Harder to understand what is where
- Shared code contains code for all applications
- No border that would distinquish what is where
• Deployment interference
- One application deployment slows down other
application deployment
- Failing commit, fails for all apps
• Hard to distinguish applications
- Sometime you might use code from different
application
• Everyone can do changes across applications
- Messes up unknown part of the code
27. 27
• A lot of coupling
- Hard to change existing structure
• Doesn’t fit all the use cases perfectly
- key-value storage
- unknown data
• Some queries might be really hard
- dozens joins, applies, subqueries
• Code reusability
- People keep their queries for themselves
- A lot of queries doing almost the same thing
• Business is attached to db structure
- Limits engineering flexibility
- Denormalized data is needed
• No code reviews for potentially critical queries
We love SQL
Reports, no way!
• Business folks are using it
- To generate reports
- Get metrics
- Monitor KPIs
- Help track down issues
• Data accessible in single place
- Joining in SQL is 1 line
- Connecting the data is easy
• Prooved solution
- SQL Server is battle tested solution
- Tables with hundreds of millions rows
- Size of DBs in TeraBytes
- Replication
- Backup
28. 28
Conclusion
How to do it?
Focus on your Business Problems
and not only your technical problems