Speaker

Shem Magnezi

Shem Magnezi

CTO & Co-Founder @ Wilco

Tel Aviv, Israel

Shem has more than a decade of experience in software engineering in various domains: client and server-side, real-time systems, big data, mobile, and web. Shem is passionate about building a culture of growth mindset and obsessed with making teams work better together. After several years as a senior IC in WeWork and Meta, Shem is now the CTO and Co-Founder of Wilco, a platform that empowers every developer, regardless of their background or skill level, to unlock their full potential.

Area of Expertise

  • Information & Communications Technology

Topics

  • Software Deveopment
  • Software Engineering
  • DevOps
  • Thought Leadership
  • Learning and Development

The Redux State of the Art

Building complex Android apps these days might have some nasty challenges - syncing the data across the app, controlling any action the user does, processes that happen in the background or even handling all kinds of errors.
Luckily enough Android developers are not the first to face these problems, so let's try to leverage existing solutions for our own good!
In this talk, we'll share with you how Redux solved the problem of state management for Web developers and how can we use the same principles and integrate them into our Android apps.

The Mysterious Journey of Becoming a Senior Engineer

Growing internally inside an organization might feel sporadic and unstructured. As an engineer, you’re not sure what exactly you need to do to get to the next level while as a manager, you usually don’t have the right tools to support your team members and help them grow.
In this session, we’ll share a framework that helped us and others grow in a couple of roles, and that you and your manager can use to make the journey clearer and more effective.

My procrastination cost us $10,000, and it was worth it

The day of an architect is filled with technical decisions and tradeoffs. You always need to balance between long-term solutions and right-here-right-now problems.

Many times, you and your team will decide to choose a path that you know might come back to bite you in the future but is good enough for now. The same has happened to me as a CTO of Wilco, where I deliberately chose a fast but fragile solution to one of our early problems. That solution later cost us $10k, a pretty significant to a small startup. But it was definitely worth it!

In this session I’ll share this story. More importantly, I’ll discuss the tools you have as a technical leader to assess the risks, mitigate problems when they show up, and help you get a better understanding of how to balance long-term and short-term solutions.

The $10,000 Horror I Don’t Regret

Many times, you and your team will decide to choose a path that you know might come back to haunt you. The same has happened to me as a CTO of Wilco, It was a dark and stormy night when I made a fateful decision to choose a fast but fragile solution to one of our early problems. Unfortunately that solution later cost us $10k, a pretty significant to a small startup.

In this session I’ll share this horror story. More importantly, I’ll discuss the tools you have as a technical leader to assess the risks, mitigate problems when they show up, how to balance long-term and short-term solutions, and how to embrace whose scary moments.

Good rules for Bad apps

Building a decent app is easy this day, there are plenty of tutorials, videos and blog post about it. In this session, I’ll try to go over some of the top mistakes that every one of us is doing while building his app. This will cover all the aspects of building a bad app- technical, UI & UX, and product. So each one of you will be able to adapt his favorite bad pattern and ruin his app.

This is an updated version of a talk that I've delivered a couple of times here in Israel and abroad (both in Hebrew and in English), it's based on series of blog posts I've written:
https://hackernoon.com/10-good-rules-for-bad-app-part-1-technical-4ca18609b13c
https://hackernoon.com/10-good-rules-for-bad-app-eb187b148e21
https://hackernoon.com/10-good-rules-for-bad-app-f90ad01b3e6c

As you can understand from the title, this talk should be fun and entertaining.

You can find a video of the talk (only the Hebrew version is available for now) and slides here: https://blog.shem.dev/talks

DevRel as first principle

It seems like we’ve finally reached the stage of DevRel awareness where most developer-facing companies realize they need Developer Relations professionals. Yet often, they don’t really know how to set their DevRel team up for success and what resources are absolutely essential. It’s up to the team to push for better collaboration and resources.

In this session, we’ll give DevRel ammunition for their discussions with external stakeholders. We will show a blueprint of a company where Product and Engineering have Developer Relations tenants built into their core workflows from day one, and how this approach leads to better outcomes when combined with a DevRel professional.

The Mysterious Journey of Becoming a Senior Engineer

Let’s state the obvious: the ability to consistently grow engineers into senior roles is invaluable for any organization. It fosters better company culture, retains talent for longer, and helps reduce the unbearable headache of hiring in a hyper-competitive market. As we all know though, consistently growing engineers into seniors is hard—both for the managers and for the people they manage.

As a tech lead, you often simply don’t have the tools to help your team members grow. Overseeing them from task to task, from sprint to sprint, simply won’t cut it. To help them make the jump, you have to be much more deliberate with how you assign responsibilities over time and measure your team members’ professional growth.

As an engineer, unless you’re extraordinarily driven, you can’t ever be sure exactly what you have to accomplish and learn before you can turn into a leader or a senior individual contributor.

Too often, talented team members fail to get promoted when they’re ready, while their peers become senior in name only without having the right skills. And the whole process is so obscure, it’s difficult to even learn anything from failure.

In this session, we’ll try to chart a clear growth path, both for tech leads and for individuals, using a framework that helped grow numerous senior engineers.

Ditch all staging environments

As a software developer, you know the code deployment drill: it’s developed on a local machine, reviewed, pushed to staging, goes through QA, and only then, if everything works well, gets to production. That’s a lot of environments to maintain, a lot of code to sync and resources to manage. Is it worth it? Most would say that it does, no matter how many services we need to duplicate and data alignment to do. That’s the safe way to deploy code, after all. But what if we could do everything in a single environment without compromising build quality? Join us and see how this can be done.

Bundle optimization, a practical guide.

Building frontend applications is now easier than ever, but this simplicity comes with a price. The ever-increasing levels of abstraction obfuscate everything that goes “under the hood” of an app, obscuring things like the performance impact of every new addition.
This talk will focus on web app bundle optimization and its role in ensuring high loading speeds and optimal performance of web applications.
Drawing on practical experiences and lessons learned from our work at Wilco, the talk will cover key topics such as code splitting, asset optimization, caching and more. We will also highlight the trade-offs between performance optimization and maintainability, and the importance of understanding the relationship between bundle size and user experience. The goal is to provide attendees with a comprehensive understanding of JavaScript bundle optimization and the tools and techniques necessary to improve the performance of their frontend applications.

“Micro Frontends”- You Keep Using That Word, I Don’t Think It Means What You Think It Means

"Micro Frontends" is the new buzzword in the Frontend world, but too many times people use it in the wrong context or with different things in mind.
Micro Frontends can refer to different kinds of solutions that solve different types of problems - starting from using different UI frameworks on the same app or letting different teams work on separate parts of the code independently.
In this session, we'll go over the different problems we have when building a big app and how different micro-frontends solutions can help with this.

This will help team managers and tech leads of web app projects, when the team and the code base starting to grow, and they start investigating some ways to scale.
Here's some rough outline of the talk:
- Introduction: what are the challenges we're facing when a system reaches a certain size (in lines of code, in complexity or number of contributors)
- Web uniqueness- we'll go deeper into specific things that are unique for web apps and why we can't just steal solutions from other domains (like micro-services).
- Our story- our team in WeWork is building an app that has been growing exponentially, and it's getting harder to manage it. We also wanted a way to dynamically turn on and off specific modules in the app (like all the features related to billing, or things related to sales). Breaking the monolith was necessary.
- There are many options- there are many ways to break your web app; some of them are generics, and some of them are framework specific.
- But before you choose a solution, know what you want to solve- don't try to solve ALL THE THINGS. For example, we know we don't need to support different frameworks since we are all working on React.
- Choose the right solution for your needs- as said, there are many options out there: starting from arranging your code in some way, or using some tools like Lerna or Yarn Workspaces, or going all in and using a complete system that supports this, like Single-SPA or Web Components (or many things in between).
- Tips to choose the right solution- the process we did and what helped us with the unknowns.
---------------------
I gave this talk in a local meetup: https://www.meetup.com/Hodash-Dev-Meetups/events/260694554/ and the video: https://www.youtube.com/watch?v=76IhHEMxmN4
I'm also going to talk about it in one of the biggest conferences here in Israel: https://summit2019.reversim.com/session/5c741556fb50dd0017b460d2
And will deliver a lighting talk version in REACT ALICANTE in Spain: https://reactalicante.es/

Shem Magnezi

CTO & Co-Founder @ Wilco

Tel Aviv, Israel