Logo

Software Developers Journey Podcast

#130 Natalia Tepluhina a DBA turned Vue.js-expert at Gitlab

Transcript

⚠ The following transcript was automatically generated.
❤ Help us out, Submit a pull-request to correct potential mistakes

Natalia Tepluhina 0:00
What's up? It's interesting, you're not applying for the position of the senior or junior middle, you're applying for the front end developer and they decide what is your rank on your interview, which makes sense to me, right? Sometimes people undervalue themselves and times people overvalue themselves. It's just easier to define by the company. Again, senior in one company is not senior in the different company. They all have different criteria. I even think the whole grades is kind of float in general. But at the end of my interview, I was offered a job as a senior developer, my my imposter syndrome kicked me heartless. My feeling was I tricked the whole bunch of interviews like five people, I trade them off.

Tim Bourguignon 0:50
Hello, and welcome to developer's journey, the podcast bringing you the making of stories of successful software developers to help you on your upcoming journey. My name is Tim Bourguignon, and on this episode 130 I receive Natalia Tepluhina. Natalia is a Vue.JS core member and a staff front end engineer at Gitlab. She's a GDE Google Developer Expert in web technologies, a conference speaker and author of various articles revolving around Vue.js. Natalia, welcome to DevJourney.

Natalia Tepluhina 1:19
Hello, and thank you for inviting me.

Tim Bourguignon 1:21
Oh, it's my very pleasure. Natalia, the show exists to help the listeners understand what your story look like, and imagine how to shape their own future. So let's go back to your beginning, shall we? Where would you place the start of your developer's journey?

Natalia Tepluhina 1:37
On my Twitter once I was asked about three interesting facts about myself. The second one was I learned JavaScript after an age of 13. And you might think this was a start of my developer career. But this wasn't the start. I actually had start much earlier, and then a break. So the starting point for myself was I think around me being 12 and trying to code on the very old machine called ZX Spectrum. If you're older than 35, around hears, you probably remember this, it actually operated on mag tapes. So not floppy disks, nothing fancy like this. He just had her mag tape and some software and most of give her playing games I did as well, of course, but also I discovered it has a basic programming language. Apparently, it was very buggy. I mean, it was stuck in every single time I was trying to write anything. But I still managed to write and very simple programs and basic and it was so fascinating that I continued coding, when I got my first actual PC, it was 286. And it worked perfectly, and you compare it to Mac tapes, this was a huge improvement. And I think my biggest achievement back then, was writing a mouse driver with basic, it was incredible. I still have no idea how I did manage. It was so funny. And I think I need to thank my dad, who was a system administrator, in all these, like very steered that type of system administrator, the first generation of sis admins, like Yes, yes, like this sweater, and all the stuff that they did, like, you know, just building LAN networks and everything. They were all just absolutely universal specialists from physical work to programming. And he actually explained to me a lot about programming lots about this in general. And I think due to him, I kind of twisted my future career. Because I think around the age of 14, I started thinking about entering university as a computer science specialist, but he was assisted me. And it was really interesting also to set up networks, and doing all this work. And I think I spent so much time at his job looking at what he's doing. And also like stealing some internet because you know, 90s internet everywhere, especially in Ukraine was non existent. I mean, my family would kill me for the phone line. So I was kind of doing internet case work. And I decided to go to Computer Engineering. And this is a moment where I kinda side walked from the actual programming from actual development because Computer Engineering is slightly different from computer science. It's more about computer systems and hardware, not software and not about algorithms. Of course, we had courses regarding software development, but oh my god, it was Pascal, Pascal problem in the beginning of the 1000s. So like I can see modern times because at the modern times, right, and in c++ already was a thing but our universities I think, are a bit outdated when they teach you actual computer science engineer. So they're just giving you things that are outdated. Sometimes by 20 years, sometimes it was very modern, still thankful to my university for relational database courses, it was very insightful. But most of them is like, you're coding something, some algorithmic tasks with a very outdated plan, which, and it wasn't fun. And relational databases kind of clicked with me. So after the university, I decided not to be assisted me, in particular, but database administrator for a long time, I was working with different databases, mostly with lots of, again, if you hear about this year old, a very specific enterprise database that has no real usage. So if you start right, Acacia work with databases, nice way to backup Norway, this is not the way to the back end at all. And I was doing a DBA job for a long time. But it wasn't really entertaining. I can't say it was bad, it was still more or less fine, but not entertaining. And I really wanted some changes in my life. And for me, this moment to change I think was was my maternity leave, after which I realized I don't want to go back. I don't want to do any debate anymore. I was looking for something that could bring me some fun, I came across front end development, because even in university, of course, we all did these HTML pages in Notepad, notepad plus, plus in Notepad, actual Notepad, on Windows 95. Still, what any CSS just appeared around this time, and we have no idea about CSS, we were just building HTML pages. And it wasn't magic. We just open a text file. He just typed something very cryptic, no compilation. And in comparing to Pascal, or whatever, nothing, you just rename it to HTML, open it in the browser works, because it was so nice. And it's like, oh, and it seemed a bit more easy. Of course, I had no idea that worlds changed a lot, especially in JavaScript development, that was very optimistic about it. And like, okay, I tried. I mean, I've built some HTML pages, let's take a look at front end development, it still felt like a magical next start, mostly because you always can see the result of your work. Immediately. You're working on this. And it's like just showing in your browser on the go. And it was an interesting moment for me. Because all your knowledge database is absolutely not related to what you're going to do. So it started from scratch. And it was after 30 years, I was very, very fascinated with what I could see. And I was trying to understand how to start the learning. All around, I started some offline courses in Ukraine, I didn't like it absolutely. Like, no, no, this is not a good way they were teaching something weird, the course was not good at all. And I looked at Google's Udacity course. And at this moment, you definitely had an interest in model, you were paying, I think, $100 per month for a course. Okay, it was 200 per month. But if you finish the course, before six months, in the course, you will have 50% discount. So basically, you will be paying just one month. And one thing you need to know I'm very greedy. So we kind of calculated the course to be four to six months, if you're trying hard, because of course they don't want to give your money back. I think within one month, wow. It was my full time job. And I think I spent not even eight hours a day, but around like 10 to 12. But it was so fun. It was like there were no frameworks there. It was basically a course mostly about HTML, CSS and JavaScript. And I have to say that at this moment, Google did really good job about explaining things more deeply. And it usually is done with frameworks. Because I see many developers right now jumping straight onto frameworks development, I can say it's bad, but without some JavaScript knowledge. They sometimes are stuck with things that are not true like framework. I know this for sure. I actually have a telegram channel for Vue js and admin there and people sometimes are asking questions that not related to the primer, but they think they actually stuck at the framework. No way. It was nice course because I had reviews and I think if you're learning something if you start learning programming language, if you learn actually anything, not only programming language, the review is a crucial moment. It just explains to you whatever you're missing What are you doing good, what are you doing bad you actually learn to interact with critics as well. And it's a good step because in the future You're most likely will have your reviews on your merge requests. You can hear I'm from gait lab, right, Marcia quest, because when you just join Good luck, like, the first thing that you do your name or request for requests, because you get used to be nice, and everything was fantastic. We call them merge requests. After a good time you develop a Stockholm Syndrome with these big merger. Okay, so after learning some stuff from your bestie, and I was optimistic, I was like, Okay, let's look for some job. But I'm also a mom and I have a kid in the kindergarten. So I will be looking for remote work, very optimistic junior developer, not even Junior, in fact, right. I didn't have a commercial experience. I just built a few things to have a portfolio on GitHub. But there was still like, I want a junior position, remote. And if you think I was disappointed, then no, I found a junior position remote. It was crazy. I still can't believe I'm a man. I'm saying this because I know it was hard, especially in Ukraine. At this moment, I was in Ukraine. And just to explain the market. Ukraine is a big outsourcing country. We have quite good companies, but they're all focused on outsource. There is almost no product companies. And the salary in Ukraine, the salary of the developer is quite large compared to average. And this leads to what everyone wants to be a developer, because this is just people consider these being easy money. It's not. But still, this leads to the fact that we have a huge wave of junior developers. And you can only imagine a competition for the position. If you open it for the junior developers, most likely you will have around 200 cities in the first day. I know right? And I want to find a remote one. I did find it. It was a very small outsourcing company. I think it was not even completely Ukrainian one. It was like Israeli of Korea Korean outsourcing company. And I don't know even why they did. They decided to pick me up. Excuse me, because they needed someone to work with also PHP, especially WordPress. I had I had no idea what PHP was just learning HTML, CSS, and JavaScript was like, I was very keen, like, I can learn this. And I can try to do any test task. And it was funny, because they decided to give it a try. And apparently most of people in the company were WordPress developers, can I say that WordPress developer is a thing. I think I can many over focusing on these building plugins, especially. And they knew a good chunk of HTML and CSS. But nobody was focusing in the JavaScript. And apparently, with like, three to six months in the company, I became the main go to point for any JavaScript task. And of course, there was no offensive framework at the beginning, we were working on the projects on the WordPress. So on the front end side, you just needed to build something with jQuery, mostly. And this by the way, this is the part that why I like frameworks that much, because if you work for a good amount of time, with vanilla JavaScript, and jQuery, you're actually grateful for the things pray will do for you. Because you can compare, right? It's true. Because I don't want to be don't want to be a light because I felt like good amount of jQuery. But sometimes new developers today start with frameworks and take them for granted, if they were always here, and they complain about frameworks and so on. But if you've worked with it, all good JavaScript, then they look so good.

Tim Bourguignon 14:07
Oh it's true for for any kind of technology we've worked with. With whatever we had before, you're so happy with what happened so far. I mean, just take the the Chrome Developer Tools. I'm pretty sure you couldn't imagine a life without some kind of Developer Tools nowadays, but we used to work without that.

Natalia Tepluhina 14:26
Yes. I, you people did develop myself, Internet Explorer six. I think I started with Internet Explorer eight, which was a nice start, but not a six. And oh my god, they were doing things in Internet Explorer. Six of all the squares, like everything is a square in Internet Explorer. It was crazy. And then you have all these modern browsers where everything just works with all the dev tools, bells and whistles around and you're actually grateful because oh my god technology is so nice. It was working for a long amount of put a good amount of time with the jQuery. And apparently, we got a new project as any outsourcing company, sometimes you have some interesting perspectives. And we needed to choose a technology for this a framework because this was a request, you need to find a framework. And it was around 2016. I already tried some AngularJS on my own. And in 2016, in September, if you don't know this, there was a release of two frameworks in I think it was just two weeks between them Angular two, and view two. And we looked at Angular two, the whole team was horrified. Honestly, I mean, with TypeScript alone, was enough to scare anyone, especially jQuery people, you can only imagine this, like, what this is this set for jet. Oh, no. It was crazy. I mean, AngularJS was easier and easier to pick up general. And we looked at, it looked a lot like Angular JS, but better side of it. So if it was like developing further, like, Oh, this guy's actually doing something that is easy to pick up, easy to understand. And it looks a bit like AngularJS, because they have similarities in terms of directives, and so on. Just give it a try. Let's just dedicate a few weeks trying to learn a trying to build something with it. And we'll see how it goes. And for me, it was a second moment when I was like, Oh, my God, this is pure magic. It's just, it just works. It just works immediately. And it's so easy to build everything, all the abstractions like components. Of course, I was doing a huge amount of mistakes when I started absolutely crazy. But at the same time, it was easy, nice. And it brought me to review forums and asking questions, because framework was just released. And with any major release, you have a good amount of box in the product. So I was looking for answers on my questions. And this led me for the moment when they actually report a bug in the framework, because I asked here and there and everyone's like, No, we shouldn't work like this. It's a bug. So create an issue. It was so scary to create an issue. They just go there, the public because they have a feeling that what if I'm doing something wrong? And my question is actually just silly, I think it was fixed within two days. And it was a second very impressive moment. For me, open source is nice. And people just doing this work for free, fixing the bugs to help me. And you're actually influencing the product. Because like a good thing. If you work with any sort of open source, and you have a bug, honestly just go and open an issue. This is as valuable as creating a pull request. And you're influencing the product. For me that Oh, wow, this is this is really, really nice. And this led me to learn the framework on my own not only for the work on the project, but also like experiment in here. And they're starting reporting issues, again, starting contacting with a team and within the community. And honestly Vue JS community is very it was and yet it is very nice. And I feel like I'm kind of promoting my own community where I belong to. But it was very, very kind and cheerful. And I think this is a result of the fact that the whole framework is not backed by anyone, just community justice users. We don't have a huge company that kind of sponsors the framework. So everyone is open and communicative about Okay, I was building it. And at the same time when I was doing this, I kind of realized that maybe it's a good moment to start looking for another job. Because we ended the project with Vue js and the next PHP jQuery madness was waiting for me. And of course, I didn't want to go back. I just wanted to experiment with Vue JS with actually any kind of framework because I realized that view is nice, maybe there is something else. I was looking at Angular and react. And I decided to apply to another remote company. The whole my JavaScript career was remote. And I think like every single step that they did was a bit crazy, but either I was lucky. Or I can say I was good. I realized that my code skills were maybe even below average, but I was brave to apply. So next step was to apply again to the outsourcing company and it was Polish outsourcing company. But even worse, this is not even Ukrainian. I had no idea if they take the contractors from other countries. I decided to give it a try because I read their handbook. And it was a company with a very nice culture. I can even name it. It's called scallop seats, like a programming language scalla with a seat at the end, because their main specialization was Scala language, not front. So it's like, why not apply to the Polish company that specializes in scaler? What can go wrong? Indeed, let's give it a try. Well, they were doing some front end work as well, because of course, they were building really nice performance back end projects with scaler. But sometimes clients need it, of course, the cover front end as well. And it's just easier for outsourcing company to deliver both. So I applied, and I got a testing task. They were allowing to do it within a week with a framework, the staff, and I tried all my best on Vue JS to build it. It was good. I think it only lacked unit tests. Rest was done, I can put on a good level. And of course, even the good my friends to have a review, not just doing it for myself, but just just take a look, what am I missing there. And when I sent I got an interesting response, like it was the first time they have seen uJs in action. Like, oh, you're using this like very new framework, it would be like today, someone decided to build a project, a testing project with spelt, which is new, fresh, but not really used in production so far. And it's used, but not that widely, right? Like people have, Oh, interesting code. We have no idea what's going on here. But let's take a look. And then like the testing test, they offered me a job of they called it a strong Junior, it was a huge achievement for me, not only Junior but strong, Junior, I was so happy about this. And the first month I was working on a react project. This is my all react experience. So confession, like my whole experience in react framework is one month as a strong Junior in outsourcing company. That's why I'm always stuck when people ask me today to compare view with react. If I'm curious, honestly, and next step for me was the dreaded one. Angular, it was a nice project, it was video streaming platform, kind of challenging one where I was working with a few my colleagues with Angular 2456, up to six, I think. And I think it was the first moment when I learned a lot about developer culture. Because previous outsourcing company was not about processes, you just do your job. And that's it. Now, almost no reviews, you just fixing bugs? I mean, if it's working, it's good. They're pushing the master. Because who cares about branches to fix the project? And it's fine. So it was absolutely key. I think we all did this as well, at some point until it developed the some interesting development guidelines writing processes.

Tim Bourguignon 23:15
Absolutely. Absolutely.

Natalia Tepluhina 23:17
So I learned about branching, I was like, Oh my god, I think everyone has a moment when you, you asked about to use rebase instead of merge, and your first three base and you fail miserably. Because you have no idea how to resolve them correctly. I just delete it all and clone it again and just reproduce my changes here.

Tim Bourguignon 23:44
Yes, we've all done that.

Natalia Tepluhina 23:47
So painful, because this is just, this is supposed to help me not to screw up so much. But it was also I had an amazing colleague, senior crease, who was working with me who was doing most of reviews, and sharing his opinions on the code and sharing his advices as well. And he actually believed in me, he felt I was very promising developer. So he spent a lot of his time actually growing me as a specialist. And he was very optimistic, cheerful and so on. And the important moment was when we were working on the project on Angular about here. We decided to go to the conference. And for me, it was very you like oh my god, developer conferences, never been to one. It was Angular conference. It was mg Vikings in Helsinki. And when I went there, it was one more thing that kind of pushed me further in my personal development in my career as a developer. It was very fun. It was nice and speakers were incredible and There is a moment when you look at the speakers and think like, Is it even possible for myself? to be like them? Is it too late already? Or just Can I do the same? Can I be there? Can I share whatever I've learned? And of course, like, almost anyone, I was like, I have nothing to tell from stage. I've heard this so many times from so many people. Like why don't you go to the meetup and share this? Oh, what they have nothing to share. This is not interesting. This is I have nothing fancy to work on. And this is so untrue. Single developer has something to tell about lead practices be made, like interesting discoveries plugins. Like, if it's obvious to you, it doesn't mean it's obvious to everyone. Some people have no idea about this. And this moment, as we are speaking is like, this is not about myself. But maybe, maybe it would be a good idea to have this as a goal, maybe very distant goal. I heard about Google Developer experts as well. And they shared this with Chris saying, like, Oh my god, can you imagine how much time it takes to get there to be like a speaker and an expert in this system? I guess it felt maybe it's not that much. Who knows? It depends on how hard you try. And this one sounds like okay, I mean, nice, optimistic thing. But it was it was a nice experience to be at the conference, and back to my work, and work for some more amount of fun. I was actually asking to have a view project from the company. But at this moment, we had only Angular and react once I was promised, like, as soon as we have view, you go there. But the conference was actually a moment where I started to be more public and open. I revived my Twitter, I had a Twitter account since 2011. But never ever tweeted anything. And when I was flying back from Helsinki, I remember this night at the airport, where I was like, Okay, okay, let's just start speaking with outerworld. Maybe it will leave me sour, maybe not. But it's an interesting one. So I decided to just check VGS people on Twitter, see what's going on in the world. I subscribed to many of you developers accounts, and that was just triggering them. And thought about maybe there is also uJs conference could be interesting to go there as well. Not only to Angular, because Don't get me wrong. I'm like Angular, but it was mostly about working with it. Not with not about the passion. And they have a Stockholm Syndrome. I like TypeScript. And Eric's Yes. Yes, later, but okay, no spoilers. Let's go back to this moment. I was reading learning. And one day, I noticed that there was Vue JS conference in the United States. And as a strong junior developer from Ukraine, I couldn't effort the trip to United States myself, the trip, okay, but not free with a conference ticket. And there was some kind of diversity initiative there. I noticed that it was an initiative from an whew, let's say, I know, you're not the company, even just initiative. They were called view vixens. And they were similar to Angie girls. And I knew about Angie girls, this is an initiative helping women to learn Angular for free. It's a free workshops. I was even mentoring one of these workshops, but for view, I had no idea that this existed. And I decided to ask a founder of evictions about do they plan to have this in Europe, as well. And I think it was a gem boober By the way, she found two weeks since she was working. I think at this moment at fel Eric, not Microsoft. She went to Microsoft later. And I think her Hey, like, they've done workshops in Europe. And she responded to me with like, Hey, we do in perspective, but so far, we don't have any curriculum for the workshop. There is no workshop problem. And I'm looking for any kind of help. So if you want to offer your own, please join. We will be happy. I was so happy about this. And if it Okay, let's do this. I joined it. It was April of 2018. Already, yeah, April of 2018. And I was just, I was trying to build a curriculum for the workshop. I was actually writing it. And then after this, Jen was like, Hey, we have a conference in May in Barcelona. Like may it's April and we have nothing ready with us. This will center on the workshop. They're like, yeah, let's let's make it happen. April was crazy. It was like Udacity course again. I was just working by day and just building the interesting workshop because I wanted it to be interesting. I think sometimes people, when they design free workshops for beginners, they stop at some some kind of to do app. This is no fancy. Like, imagine someone who never touched front end development, and you built it to the app with them. It's a bit boring, honestly. Around, I think it was dark API. So around pictures, nice elements. I decided to use component UI framework. It was my mistake, I would write it after, but it was still very funny. And the whole idea of the workshop was not to teach them to be proficient in uJs. It was about make it clicked with them. Because if someone is interested in something, they will try to learn by themselves. So I was creating this curriculum like crazy. And if I was flying to Barcelona after it was so scary, honestly, there on this workshop, even so I felt like okay, at least I have some knowledge of uJs. It was a good knowledge. But this time, it was around like two years, some commercial experience, and then building projects on my own, and again, regen forums and so on, and building things just for fun, like pet projects. And it went so nicely. It was very exhausting, when you teach for the first time, but it was so nice to see that people actually are understanding something, you know, this moment where there is a light in their eyes, when they tried something, and they fail and fail and you help a bit and they very attached to this. It's like It's like a light bulb, like, Oh, I realized that I understand this. It's working. It was really amazing. And the workshop was at the conference, as well. So I contacted conference organizers, they were actually caring about venue and food and all the stuff like typical worship at the conference. And they also invited me to their next small event in Paris in June, like, Okay, this is really nice. Let's just fly there and run it one more time. And I had so much fun. And conference organizers also said, if you're already flying to Paris during the workshop, would you mind giving a talk there? Like I thought at the conference, you wanted me to look, you know, this is from a small conference. It's like a big meetup. It was true. It was around like 150 people. That a very small conference, it was Vue JS road trip, Barris. And it's like, Okay, I will try to find some interesting topic, like, what do I know? What do I know that people don't know, especially in the view world? I know Eric's Yes. Let's try to explain some rxjs in the talk. I'm still ashamed of this stock. And people were saying that it went good. But when I watch it, sometimes I feel like I was so frozen on stage. I was so terrified with the fact people are listening to me. But after the talk, they approached me and asked questions, and I was happy to answer them because it my experience with our chairs was pretty much extensive. All their state management in Angular is built upon it. It was so much fun, just to answer. I've seen it, they were interested. And I realized they're like teaching people something real like to share the knowledge and see they understand. After the talk, I went back home. And apparently I got one more invitation to the conference, not from these organizers brought but from people who are listening to the talk, and asked me to fly to Armenia. Next conference. This was a moment when I realized maybe the talk was not that bad. The first moment and second was like, oh, wow, people actually inviting me somewhere. This is, this is impossible. I had, I hadn't had a huge imposter syndrome about this. Sometimes I think that, Okay, next moment, people will realize I'm not that good as they think. It's still with me. So I was running workshop with Vivek sense chatting in their chat and giving a talk a few conferences. And I think in the vixens chat, I met Philippe Philippe de la serda, who was working at gate lab at this moment, and who was also a conference speaker, few conferences. I looked up to Harrison, he was a senior developer gibbsboro experienced and once she asked some advice about the EU, in predictions, chat, and I thought, Okay, I know how to figure this out. It was about state management. I answered. She's like, Oh, yeah, you're right. This is really nice. After this, we met in person in London, at future Islamic conference as well. chatterbait and she was like, why don't you apply to GitHub? And it was like, get to give up. You have five stages of interviews, you know, and I will be rejected at the First time, you're like Google it, no, no, I'm not applying to give. You have a good knowledge of you. And we're actually using it on the front end. I stumbled over this. Okay? I'm so jealous of her honestly, like, you see, I mean, I'm only building things with you for fun, what I'm actually paid for this. This was really cute. And she was like, just just try it just a like a gift love and worst case, you will. But I can even recommend you. If you're scared. I was like, Okay, I'm applying to give up, I will fail, but it's fine. I will just try. And if nothing works, I will just know that maybe I'm not that good. forgiver. She was convincing me really happy to do this. And I applied. And again, that was an interesting, interesting assessment, written assessment for Git lab. I can even share the first question from this, this is not destined task. This is just a say in it, right? The first steps like why do you need a front end framework? And it's not that easy to answer, if you think about it. It's not about just state management or whatever, like, why, why do you actually need a front end framework, I used all my budget very experienced to explain it and build some explanations of this, and so on and so on. And I really like the interview process in general in the company, they're very welcoming, very nice. And I still remember my favorite question on the second stage, which was technical interview, because the interview said, like, Can you explain the viewer activity and a small flashback? All this time I was threading issues. I was applying with my pull requests to fix a bit of view documentation already. I was very interested about what's going on in view world. I was speaking with the team, sometimes, especially at conferences, because on view conferences, most of the speakers are from the core team or ecosystem. And Jen was also part of the second system at this moment. And I think it was my shining moment when he said, like, Can you explain if your activity as you do have your three? Because I knew what I planned for view three, even thought it was released only this year? Not in 2018? Explain both. And I did. I think it was impressive for the interviewer who was also my future manager, and I joined Git lab was picked up. It's interesting, you're not applying for the position of the senior or junior and middle, you're applying for the front end developer. And they decide what is your rank on your interview, which makes sense to me, right? Sometimes people undervalue themselves and thumbs, people overvalue themselves, it's just easier to define by the company. Again, senior in one company is not senior in a different company, they all have different criteria. I think the whole grades is kind of float in general. But at the end of my interview, I was offered a job as a senior developer, my my imposter syndrome kicked me heartless. My feeling was I tricked the whole bunch of interviews, like five people, I trade them all. It was so funny. Because when you have it, it's like, all the people around are great. All the people around are better than me. And apparently they trust my life was so funny for me, and and joining the senior developer and was working on the actual thing that everyone sees at Git lab, which is merge requests, discussions, commands, the things you do if you work with a gift, like he used it every single day. And I was allowed to work with my favorite framework. And apparently at the same time, almost the same time eating healthfully year after this, my contributions to view were recognized. I was already maintainer, one of the maintainer, so the documentation repository due to multiple contributions and communication as well. And they just said, Why Why don't you join the core team? Because you actually have already the core team member, you do work. And I was, again, again, imposter syndrome, you can know. And this feels really wrong to me. But okay, why not?

Tim Bourguignon 39:13
What does it make for difference to be a core team member?

Natalia Tepluhina 39:16
Honestly, it's just a title. It's not something you paid for. It's not something you are privileged. It just allows you to add the title of Twitter, actually. But that's lots of responsibility and work inter. Because when people think, Oh, I just joined No, no, in fact, it's just responsibility, your work a lot. You answer people's questions. And also, you have this feeling that right now you're part of the team. You just can't allow yourself being rude or whatever, to the community. It's a responsibility because what whatever you're doing is also right now be considered will be considered as a part of core team as well. And it's collaboration. It's work. It's lots of fun. as well, because we have our internal discord for the team. We're having fun, we're just communicating. Most of most of team is just people who work on their daily jobs. It's not something that we work full day on Vue js, except I think Evan hue, who is the creator, and a few more people, if your outer maintainer, Eduardo, and I think also how king who is working UCLA, so these people are paid full paid and work full time on the framework, but most of us just just an open source, people, we work in our spare time. And this adds to the core team. And at GitHub, I think it was celebrated absolutely crazily. When they joined, people noticed this, and there were so so many congratulations. So right now I'm in the position, I really like I work on the framework every single day. And I work on the product that is using this framework fairly extensively. Git lab is huge. If we speak about the codebase, it's around 500,000 rows of view code, only view code. And it helps finding bugs and framework, it helps check in every single possible cases, use case of the framework and helps to report back but also, it helps to enforce good practices in the company. Because you know, how framework should work. You're actually one of the authors of the documentation. And it helps you to bring everything good and like make sure that people not doing something wrong, like mutating props, which still happens sometimes, especially progress in object. So yeah, I understand the story sounds a bit crazy, probably, there were moments that I still considered being a pure luck, but I believe that I think it was a TED talk about lucky people. quite lucky people aren't so lucky. The thing is, lucky people are usually those who see the opportunities and who do not refuse the opportunities as a first step, just give it a try. And maybe, maybe it will work. Maybe it won't. But if it won't, you're just staying. Wherever you are right now, sometimes you're not losing anything. And if you refuse this opportunity, you will probably be considered unlucky. And I really like this concept. Because I just saw the opportunity with like, Polish outsourcing company or with view vixens over the top. And as a first step, I didn't say, oh, it talk. Oh, no, no, I can't I just, I'm just too scared. Okay, worst case, I will fail on stage. It will be one fail, and I won't try anymore. What if I don't?

Tim Bourguignon 42:45
I think it's a one of the guests who said you lose all the opportunities you don't take? Yeah, exactly. I really like the formulation. It's it's very true. You don't have so much risk in trying. But the reward can be extremely, extremely important and changing for your life.

Natalia Tepluhina 43:02
And even if you fail, you will learn something. We learn things by failing. Sometimes you make absolutely make some conclusions out of your failure. Right? Absolutely.

Tim Bourguignon 43:12
I wanted to underline another thing. You mentioned three persons who had a very important role in your life. One was Chris, then there was Jen and then was Philippa. And what I really like in what you said, is that they kind of pushed you in making the impossible possible. Chris was saying, well, maybe it's not that hard to create a talk. And then Jen said, well, maybe you could create a workshop, and by the way, it's for next month. And then Filipa said, well, but you should try and maybe maybe we'll work out at Gitlab. And I this, this, this capacity of let's call the mentors, even if the term issometimes a bit too overloaded, to see something in you and push you beyond your shadow, and in trying something is absolutely fascinating to me.

Natalia Tepluhina 44:03
Yes, yes, this is very true. But I want to add one more influential person was actually my dad, because again, imagine it's 90s in Ukraine. And I say that I want to enter university for computer engineering. And it wasn't considered as a one profession there. I understand how sexist itself is sexist. But it was true. When I was growing. There are people that are like that sysadmin can be a woman. It's just impossible. And he said like, okay, just give it a try. I mean, I believe in you, you you will do good. And it was against something impossible.

Tim Bourguignon 44:41
It worked. Yeah. That is awesome. That is absolutely awesome. Would you have an advice for people that needs to jump over their shadows like us and start something in their life and maybe in our direction in the direction of computer science or software engineering or something?

Natalia Tepluhina 45:00
Okay, I have three, they are small, so I will just turn into them. First of all, don't lose your opportunities. If you think something is impossible, just say, Okay, I will give it a try if it's impossible, okay, so I failed, but just give it a try. And sometimes you will be surprised for the outcome. Second one, if when you learn something, follow the path of making things and breaking things. Don't just watch a video course, don't just read an article. They're amazing. But until you build something, and until you break something, especially, you don't learn, but debugging is probably the most interesting process in terms of learning. And when you figure it out, it's forever with you. If you just watch the course without building stuff, it's not. And the third one, sometimes when it's really hard, and when you think there is a huge goal that you can achieve. Think about the thing that I think there was a Chinese saying that a bath of Sir 1000 Lee starts with the first step, just make the first step and continue with these baby steps. If it's so hard to build, if it's just a huge thing, to dedicate five minutes a day to it, just make this step by step things. And he will be surprised again how fast your huge project is building with only five minutes a day. Thank you

Tim Bourguignon 46:18
very much. Don't lose any opportunities and make and break things and make a first step and then another. I love it. Thank you very much.

Natalia Tepluhina 46:26
Thank you so much for inviting me.

Tim Bourguignon 46:28
Natalia, where would be the best place to continue this discussion with you?

Natalia Tepluhina 46:34
I think that easier. The easiest thing is my Twitter. You can either ping me on your boss, if you wanted to make public if you're not comfortable with a public discussion, my DMs are open. So please feel free to DM me.

Tim Bourguignon 46:47
Awesome. Did you have a website? Or do you have something you want to advertise and plugin?

Natalia Tepluhina 46:51
I have a website but it's basically just a small portfolio about my talks and articles and links to Twitter again.

Tim Bourguignon 46:59
Anything on your plate for the next month any unique conference, any more conference, anything view related? Any VueVixens related?

Natalia Tepluhina 47:08
I think the most important thing as well, still working on the documentation. If you work with you, if you read our documentation, and if something's like wrong to you, or you don't feel this is good, or maybe not clear, please, please create an issue of per request. We're really happy to see your contributions,

Tim Bourguignon 47:26
And we'll add a link to that in the show notes. Natalia, thank you very much.

Natalia Tepluhina 47:31
Thank you, Tim was really nice.

Tim Bourguignon 47:33
It was indeed. And this has been another episode of developer's journey. We will see each other next week, bye. All right, this is Tim from a different time and space with a few comments to make. First, get the most of these developer's journey by subscribing to the podcast with the app of your choice, and get the new episodes automagically, right when the air. The podcast is available on all major platforms. Then, visit our website to find the show notes with all the links mentioned by our guests, the advices they gave us, their book, references and so on. And while you're there, use the comments to continue the discussion with our guests or with me, or reach out on Twitter or LinkedIn. Then a big big THANK YOU to the generous Patreon donors that help me pay the hosting bills. If you have a few coins to spare, please consider a small monthly donation. Every pledge, however small counts. Finally, please do someone a favor, tell them about the show today and help them on their journey.