We talked to Narendra Shetty, a Senior Frontend Developer at Twilio, previously a Team Lead at Booking.com and Crowdfire
Narendra Shetty is a passionate senior web developer who currently works at Twilio on building Twilio Flex, a programmable contact center. In this interview, Narendra relates his inspiring story of moving out from India to the Netherlands and then the UK, the hardships he faced while transitioning, the importance of stepping out from your comfort zone, and a fear of public speaking, which he successfully overcame. Narendra gives a talk at React Day Berlin, Dec 6, 2019.
Can you, please, at least briefly, describe your previous work experience culminating in your current position, being a Senior Frontend Developer at Twilio?
Thank you for the question. I currently work with Twilio as a Senior Software Engineer building Twilio Flex which is a programmable contact center. Before I used to work for Booking.com in Amsterdam and even before that, I was in India working for Crowdfire.
It’s been a crazy experience moving from one country to another.
In December 2016, I flew from Mumbai, India, where the temperature was somewhat around 30C, and the coldest temperature I’d ever experienced was 10C - 12C, to Amsterdam, where the temperature at that time was -1C. When I landed in the Netherlands and stepped out from the airplane, I could literally feel my face going numb.
The reason I moved was that I wanted to experience European culture and learn to build a product at scale at Booking.com. I realized that I actually loved it.
Personally, it’s been a great learning experience, full of both good and bad days. There were, of course, the times when I wanted to move back to India because I was way out of my comfort zone. But I must confess here that moving out of my comfort zone has taught me a lot and made me appreciate the change.
It’s been almost a year since I moved out to London for Twilio, and I’m loving it so far. I associate myself with London rather than Amsterdam, and every time I visited London, I wanted to move here, and I did.
My time at Twilio so far has been great, again it’s out of my comfort zone, and I’m loving every bit of it.
At Twilio, which is a distributed team based in London, Tallinn, and Prague, my responsibility starts early in the product life cycle, when I discuss and plan a feature release by coordinating with various different teams on how we need to achieve both from the tech and product standpoint.
Flex is a product that uses most of Twilio’s products such as Voice, SMS, and Task Router to help customers build their own contact centers.
The idea behind Flex is that, firstly, the customers should be able to get started with it quickly and have it up and running. And secondly, the customers should be able to change the application to suit their needs by adding, removing, or replacing any part of the application.
It’s a product built fully with React.js, and developers can use React.js to program it based on their requirements.
Now, you’re making me feel a little guilty. It’s been a while since I've contributed to any OSS projects.
Personally, I’ve learned a lot from OSS codebase, and I feel contributing to OSS is a great way to work on the quality codebase and learn from it.
I guess my answer will be outdated by the time this article’s published. That’s how fast new things are launched in the web world.
What about front-end solutions: will they compete against each other, combine, or become outdated (speaking of React, Vue, Angular, etc)?
I feel each of those front-end solutions has its own philosophy and people should pick up whatever best suits their products regardless of what the community or Twitter is talking about.
Competition is always good, and I’m glad that we get to learn from each other and push ourselves to improve.
I don’t know if they become outdated but if that happens, then it’s due to some new technology, which is ultimately good for everyone :)
Yes! I’ve been talking / blogging for some time now. Though it’s been a while since I wrote any articles 🙈.
It all started with React Amsterdam meetup, which gave me a platform to speak at, and ever since then, I’ve spoken about a couple of topics ranging from Web Performance, Animations & Transitions in React Native, AB Testing and now -- Programmable components.
Before I embarked on my public speaking journey, I always thought that speakers on stage knew everything, but then I stumbled on a blog post called “Obvious to you. Amazing to others.” by Derek Sivers. I highly recommend everyone to check it out, because it was exactly what motivated me and gave me the confidence to share my knowledge, and I feel everyone has something which others can learn from, and it’s important to share.
Overcoming the fear of public speaking. This is a huge one for me because growing up, I never went up on stage for anything, and I always had a fear of being judged.
TBA - yet to achieve
TBA - yet to achieve
I love following sports. Big cricket fan and I’ve recently started playing football every week, though I’m terrible at it.
Are you excited about the upcoming conference in Berlin? What are you going to talk about and what are your expectations from the event?
I’m excited about it. My talk is about a new pattern called Programmable Components.
So, components are the building blocks of any React application. Organizing components for scalability and reusability are important. Much has already been written about this important concept, like smart and dumb components, renderProps and compound components. I’m talking about an alternative pattern we built at Twilio called Programmable Components with its use case.
Most people want to make things perfect. Sometimes we evaluate the complexity of an upcoming goal or a problem. So, the fear to not complete it perfectly or "wrong" (Yeah, who are judges? 🤔) stops us even from trying.