Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Wojciech Jureczka - Migrating from .NET Monolith to Node.js Microfrontends

39 views

Published on

The short story of moving from .NET Monolith to Node.js Microfrontends and how did it affect our organisation. This presentation is a case study. You can find here some helpful resources about frontend microservices, how to start your project, how to find people to work with and some tips based on our experience.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Wojciech Jureczka - Migrating from .NET Monolith to Node.js Microfrontends

  1. 1. How to change mindset of coworkers? The short story of moving from .NET Monolith to Node.js Microfrontends and how did it affect our organisation
  2. 2. Pracuj.pl 3 mln active users 85 IT employees 62 mln page views per month
  3. 3. What would you like to know? Pros and cons How it works What are the benefits What is the danger
  4. 4. Timeline Idea
  5. 5. Have you ever had an idea that would change the world?
  6. 6. SO YOU WANT TO CARRY OUT A REVOLUTION HOW DO YOU START?
  7. 7. Timeline Idea People
  8. 8. Start with people
  9. 9. Start with people TECH LEADER PRODUCT MANAGER THE FUN OF BEING THE PART OF PROJECT WITH OTHERS KPI TECHNOLOGY EXPERIENCE POSITIVE ONES
  10. 10. Feelings about the project at very beginning POSITIVE NEUTRAL NEGATIVE
  11. 11. Timeline Idea People POC #1
  12. 12. Proof of concept
  13. 13. POC #1
  14. 14. POC #1
  15. 15. Feelings after first iteration POSITIVE NEUTRAL NEGATIVE
  16. 16. Timeline Idea People POC #1 Stakeholders’ requirements
  17. 17. Stakeholders’ requirements BACKEND NFRFRONTEND NFR PRODUCT NEEDS
  18. 18. Non-functional requirements Dictate clear organisation’s standards Stand for critical system mission Should help, not limit development
  19. 19. Timeline Idea People POC #1 Stakeholders’ requirements POC #2
  20. 20. Change of our mindset
  21. 21. What we had to learn and implement being Frontend Developer?
  22. 22. The stress tests with Gatling
  23. 23. What helped us? NFR made expectations clear Regular group code checks All kind of developers
  24. 24. Feelings after second iteration POSITIVE NEUTRAL NEGATIVE
  25. 25. Timeline Idea People POC #1 Stakeholders’ requirements POC #2 Production A/B Test
  26. 26. Our first production deploy
  27. 27. Our first production deploy
  28. 28. A/B Test results Improved performance 6% more applications on Desktop 18% more applications on Mobile Web 15 developers working simultaneously
  29. 29. Timeline Idea People POC #1 Stakeholders’ requirements POC #2 Production A/B Test Improvements
  30. 30. Improvements
  31. 31. Improvements & MONOREPO
  32. 32. Improvements
  33. 33. Improvements
  34. 34. Improvements 4GB 500MB yarn workspaces
  35. 35. Improvements
  36. 36. Improvements Architecture Decision Record
  37. 37. Timeline Idea People POC #1 Stakeholders’ requirements POC #2 Tooling Improvements Today
  38. 38. Today
  39. 39. Benefits we can see after one year Ease of collaboration with other teams A/B Testing Technology agnostic SEO Friendly Reusable frontend microservices
  40. 40. Feelings now POSITIVE POSITIVE POSITIVE
  41. 41. Takeaways People are essential Revolution is possible and can be safe Meet expectations of your stakeholders You will have more work than you think Be open for solutions and changes
  42. 42. Useful resources https://www.mosaic9.org/ https://micro-frontends.org/ https://martinfowler.com/articles/micro-frontends.html https://github.com/ChristianUlbrich/awesome-microfrontends https://malloc.fi/performance-cost-of-server-side-rendered-react-node-js https://arkwright.github.io/ https://github.com/lerna/lerna https://www.flaticon.com/packs/people-avatars-2 https://requirejs.org/ https://pm2.keymetrics.io/ https://nodemon.io/ https://github.com/joelparkerhenderson/architecture_decision_record
  43. 43. Special thanks to Dawid Winiarczyk Patrycjusz Szydło dawid.winiarczyk@pracuj.pl https://github.com/morriq in/dawidwiniarczyk/ patrycjusz.szydlo@pracuj.pl https://github.com/pats in/patrycjusz-szydlo/
  44. 44. Wojciech Jureczka wojciech.jureczka@pracuj.pl https://github.com/wjureczka in/wojciech-jureczka/ Frontend Developer at Grupa Pracuj

×