Data Engineering Zoomcamp: Free Data Engineering course. Register here!

DataTalks.Club

Season 23, Episode 5

Inside the AI Engineer Role: Tools, Skills, and Career Path | Ruslan Shchuchkin

Show Notes

Links:

Timestamps

Click any timestamp to jump to that moment in the video

Transcript

The transcripts are edited for clarity, sometimes with AI. If you notice any incorrect information, let us know.

From Account Management to Data Science

Alexey: Hi everyone, and welcome to our event. This event is brought to you by DataTalks.Club, which is a community of people who love data. We host weekly events, and today is one of them. If you want to find out more about the events we have, there is a link in the description. (0.0)

Alexey: You can check it out and see everything we planned. There is also a subscribe button. If you see it, you should click because this way you will subscribe to our YouTube channel and get notifications about all future streams we have. (7.0)

Alexey: Last but not least, we have an amazing Slack community where you can hang out with other data enthusiasts. The link is also in the description. During today's interview, you can ask any question you want. There is a pinned link in the live chat. (26.0)

Alexey: Click on that link, ask your questions, and we will be covering these questions during the interview. I am going to stop sharing my screen. I already see some of your answers. Luca says that they worked as a data scientist and want to become an AI engineer. (35.0)

Alexey: That is really cool. Right now I am opening the questions that we prepared for Ruslan and we are ready to start. (52.0)

Alexey: Hi. Hello. Are you ready? (1:11)

Ruslan: Yes. (1:15)

Alexey: Today we have Ruslan. Ruslan is a GenAI engineer at Finance Guru where he builds production systems around large language models and generative AI. Before moving into AI engineering, Ruslan worked as a data scientist at Smart Steel Technologies and OLX Group. (1:15)

Alexey: This is not the first time we have Ruslan on this podcast, and I know Ruslan pretty well. We have known each other for quite a few years. We worked together at OLX, and at some point, Ruslan was a guest where we talked about biohacking. (1:33)

Alexey: It was quite an unusual but also interesting episode. Today we welcome Ruslan to join us as a guest again to talk about AI engineering. Welcome. (1:49)

Ruslan: Thanks for having me. It is always a pleasure to chat with you, Alexey. (2:03)

Alexey: This week we will talk about AI engineering. Before we start talking about the main questions, I want to ask you to tell us more about your background. Can you tell us about your career journey so far? (2:08)

Ruslan: My career journey actually does not start with data topics. I finished a business administration program for my bachelors and then I worked in business roles such as account management or customer success management for a few years. I realized at some point that it was a bit too boring for me and I wanted to learn how to build stuff myself. (2:24)

Ruslan: That is when I decided to try to transition and break into this data world. I joined a master's program that dealt with it and I did some machine learning projects in the meantime. That is how I eventually got my first position as a data science trainee or intern at OLX. (2:40)

Alexey: What happened then? (3:05)

Ruslan: I worked at OLX as a full time data scientist and I did some cool projects there. That is where we met each other. The funny part is that at that point OLX was also laying off some people and I got affected as well. I was looking for a new job and I landed a job at Smart Steel Technology. (3:12)

Ruslan: The title was data scientist, but basically I was a machine learning engineer because I developed machine learning models for the production of steel. This was a very interesting research field and I learned a lot there. Back then ChatGPT came out and I was playing a lot with it. I got really passionate about this GenAI thing and I started doing my own projects back then. (3:36)

Ruslan: I have done quite a few side projects since then. (4:03)

Alexey: You mean personal projects? (4:03)

Ruslan: Exactly. I wrote a Telegram bot that would help my mom practice her English and some other stuff. After I worked at Smart Steel, I decided that I want to join AI engineering roles where I can actually dive deeper into LLMs. I wanted to learn how you make applications for them and how the users can interact with those kind of products. (4:04)

Ruslan: This is a very interesting new domain to me. That is my journey into AI engineering so far. (4:21)

Alexey: You started your career before data as an account manager and customer success manager. I am just curious if that was in any way helpful in your data career now as an AI engineer or before as a data scientist. (4:31)

Ruslan: It is interesting how non technical skills actually steer your career as well. In account management, I learned how to communicate clearly, how to set expectations, and how to build trust with people. That is very important wherever you work with other people. It helped me at OLX, Smart Steel, and in Finance Guru now to talk to different stakeholders. (4:51)

Ruslan: I can understand their needs, their blockers, and how I can help them. I know how to build trust with different stakeholders. Those are all transferable skills that are just important in life, not only in your career. I am thankful for those years. (5:08)

Alexey: Do you have any recommendations for people who want to improve in communication or setting expectations? One thing we can do is work as account managers, but not everyone has the luxury of spending a few years doing that. If I work now as an AI engineer and want to get promoted to senior AI engineer, what kind of things can I learn to become better at these things? (5:25)

Ruslan: It is actually a lot of practicing a few things that I think are important. The first thing is to try to be honest and have integrity in your communication. Say what you think, ask people for their honest opinion, and always be real with others. This is how you build trust with them. (5:51)

Ruslan: Manage expectations of other people when things do not go as you planned. Sometimes it means you need to say no. It means you need to bring some not so pleasant news forward. If you are being honest and you are being real, that builds trust. (6:09)

Ruslan: You might lose one account, but you might win it back in the future because you keep the human relations. That applies to job searches and many other areas. Just be real, be yourself, and be clear with your goals and how you can help another person achieve theirs. (6:25)

Alexey: Saying what you think did not really work out for me at school. Teachers hated me and I hated them back. I think eventually for my adult life it turned out to be quite a useful skill, even though it sometimes pisses people off. There is also a fine line regarding how exactly you say what you think. (6:48)

Alexey: It depends on how direct you are. That is another topic. Here I mostly wanted to talk to you about your career and your recent stages, such as becoming an AI engineer. You said you worked as a data scientist and then your role was more like an ML engineer even though you were still called a data scientist. (7:09)

Alexey: Then ChatGPT came and you were fascinated and started building small projects. The first project you mentioned was helping your mom learn English. What else did you build? (7:34)

Building Branch GPT and Side Project Philosophy

Ruslan: I also was fascinated with ChatGPT itself and how you can communicate with an LLM. I realized that the interface itself is a bit too linear for me and I do not like it. I built another system where you can branch out of the chats and I called it BranchGPT. You can actually check it out at branchgpt.com. (7:51)

Ruslan: ChatGPT eventually implemented this feature. They implemented it a bit differently than I did, and I like my implementation more. In my version, you can select specific text that you want to branch into, not just the whole message. One message can have so many points that you might want to ask about. (8:17)

Ruslan: That was another very interesting project because this was the first web app that I built. I needed to set up the backend. AI engineering for me is more than just working with LLMs. It is understanding context management and building end to end systems. (8:38)

Alexey: I remember having this conversation with you during lunch. You told me about this BranchGPT project. This was a few years ago. We did not have tools like Claude or Cursor that can write all the backends for you. (8:55)

Alexey: You do not even need to think now. You give a prompt, you go have some tea, and you come back to have a working app. We did not have this luxury back then. Did you implement most of it yourself? (9:10)

Ruslan: There was a moment when Bolt.new came out, which is also an autonomous agent that builds it for you. The early version was built by that, but I improved it later with agentic engineering and vibe coding. Now it is reliable and works properly. Back then I already used some tools because part of my job is to be on top of all the latest tools as an engineer. (9:28)

Ruslan: That is why I like playing with them and trying to make something useful with them as well. (9:52)

Alexey: I am going to ask you about this later, specifically how you stay on top of that. First, I wanted to understand exactly how you transitioned to this role. You built a few projects like a Telegram bot. At some point, you realized that you actually want to do this full time. (10:01)

Alexey: Exactly what did you need to do to make this transition and when was it? It was more than a year ago? (10:23)

Ruslan: It was a year and a half ago. Back then, this role of AI engineer was not even really there. we would only start seeing these kind of positions. (10:31)

Transitioning to AI Engineering Full-Time

Alexey: Interesting. Can you tell us more about how exactly the transition looked for you? (10:41)

Ruslan: Just for context, I was working for Smart Steel Technologies and we did lots of traditional but very heavy ML. We needed to do lots of feature engineering and deploy these models. We had many challenges back then. I realized that AI engineering is just something that I am more passionate about. (10:45)

Ruslan: I see it as an open field that is not only already interesting but is accelerating like nothing I have seen before. I thought it would be great to jump into that ship because it is very new. You can build expertise and you can build it fast because nobody knows what to do. I was also pulled to the fact that nobody knows what to do with it. (11:02)

Ruslan: I like discovering these new fields and coming up with solutions. In order to do that, I thought I would do some more side projects. I have specific experience, but I was reached out to by my current manager at Finance Guru. We had been in touch back when I was hired at Smart Steel Technology. (11:20)

Ruslan: I also got an offer from Finance Guru back then and we had a strong connection regarding how we approach building projects. We are both very pragmatic and very agile into building stuff. Because our philosophy about ML, data science, and GenAI is very similar, we thought it would be great to work together in the future. When I realized that I want to explore GenAI, that was the first company I reached out to. (11:50)

Ruslan: After a few discussions, it was obvious that they also want to start a team in GenAI and I was basically the first choice. I was very humbled and felt very honored. That was my way in. It basically started one and a half years before I was looking for that job just because I established relationships. (12:11)

Alexey: How did the interview look? (12:34)

Ruslan: My future manager asked me what projects I did at the time and I answered. He asked me some very basic technical questions. He said it was such an open field that you do not know much about the requirements yet. He asked me about vector databases. (12:40)

Ruslan: Agentic stuff was not even relevant back then, but people talked about RAG. I answered some of those questions because I was on top of these things. He said that was enough. You are more hiring for certain characteristics, energy, drive, passion, and cultural fit. (13:04)

Alexey: Is that right? (13:21)

Ruslan: Exactly. You hire for a track record that the person can deliver and build things rather than specific requirements. I think that is what is going to matter much more in the future than just specific skills. (13:21)

Alexey: In a way, I do not know if I can call it luck, but you already had established connections and this is what you capitalized on. I would not necessarily call it luck because you actually built this connection. It just did not happen accidentally by chance. Because of this connection, you managed to get it. (13:35)

Alexey: How would you suggest people also build these connections even though they might not get the job now? Eventually in one or two years they will have these strong connections that will make it easier to get hired. (14:05)

Ruslan: I would recommend everyone just do their own AI side hustles and build projects that are fun for you. I especially highlight fun because if you build something that is not fun, you are going to burn out quickly. If you are doing something that is fun, you will do it for a long time and eventually you will get better. Either you can monetize this project or at least you can put it in your resume. (14:15)

Ruslan: I would also suggest applying and trying to be yourself. I feel like many people follow patterns they see on LinkedIn or in other resumes when they apply. You just put another generic caption to the resume and that does not resonate much with me. I would just ask you to be yourself and try to show what your passions are. (14:37)

Ruslan: Just apply. Maybe you get a call with someone and you talk to them. You might not know, but in two years they will hire you as a GenAI engineer. That is what happened to me. (14:59)

Alexey: That is really cool. You just convert quantity into quality eventually. Try to be yourself, have good intentions, and do something. It is luck, but you are only lucky if you try stuff. (15:11)

Maximizing Your "Luck Surface Area"

Alexey: There is a post I remember on the internet from a guy whose nickname is Swix. He is also an advocate for learning in public. There is a post on how to maximize luck. He calls it the luck surface area. (15:26)

Alexey: Basically, you want to maximize this luck surface and establish as many connections as possible. You want to be as visible as possible. You want to build as many projects as possible and you want to tell people about these projects. Because your surface is large, you have more chances for accidents to happen just by chance. (15:42)

Alexeylexey: I really like this post and you are living proof that this is something that works. (16:08)

Ruslan: I fully stand by it. I will check out this post too. (16:15)

Alexey: I should find it and share it in the live chat. In the meantime, can you tell us more about what you do at work? Your title is AI engineer. What does it mean? (16:20)

Ruslan: That is such a good and hard question. People have been asking me my whole career. What does it mean moving from data science to machine learning engineer? I identify a few competencies that I have that would make me stand out a little bit from other software engineers or data scientists. (16:33)

Ruslan: I know how LLMs work. That is one thing. That allows me to prompt them better and to build systems with them better. I have the specific ML skills that help me to fine tune the model even though there are interfaces for it. (16:54)

Ruslan: My toolset is bigger and wider. Whenever there is a business need to solve a certain problem, I can solve it more efficiently or faster because I have more tools available. As an AI engineer, I am developing more into a universal soldier that can make it all happen. Speed is what is most important nowadays. (17:08)

Ruslan: All LLM enabled applications are very new. Many users have interacted with ChatGPT, but they have not interacted with voice. You need to build lots of stuff in order to validate what works and what does not. For that, you just need development speed. (17:48)

Ruslan: Thanks to tools like Cursor, you can develop much faster. I also want to be an advocate of these tools to show people how to use them. That is another part of my role that I see. I would say product discovery is about being able to deliver fast. (18:02)

Ruslan: Whenever we are at the point in the company where we need to productionize something, I have the skills like the full stack system design overview to actually build it and execute it. Of course, this happens with the help of backend developers, DevOps, designers, and frontend people. You need people to use their expertise when it is necessary. I have something to kickstart this. (18:17)

Alexey: How large is the company where you work? Is it small or midsize, around 200 people? (18:45)

Ruslan: 200 people. (18:50)

Alexey: I recently had an interview with Paul. Paul is also an AI engineer and he works at a small startup. He said this is a very full stack role where you have to do everything. What you say is similar to what Paul is saying. (18:50)

Alexey: This is a full stack role, but what about the core engineering skills? You mentioned product discovery, but a backend engineer can technically do that too. A backend engineer can use Cursor to deliver an end to end application. They can also be an advocate for these tools and show everyone how to use them. (19:14)

The AI Engineer as a Universal Soldier

Alexey: What is the difference? What sets you apart from backend engineers? (19:40)

Ruslan: The AI engineer is someone who knows the latest things in AI engineering. In the backend, you generally have certain patterns that are established. The person who knows and navigates around them comfortably is a backend engineer. I can ask an agent how to do stuff, but there are things like a recently published article. (19:48)

Ruslan: For example, non reasoning models follow instructions better if you simply duplicate the instruction. Because I know this and I am always staying on top of the field, we actually implemented it and saw an improvement in some responses. That is my expertise. That is the field that I am constantly researching. (20:11)

Ruslan: I can build the systems better even though everyone can research very well with AI now. One thing is actually doing the core work of enabling the LLM and giving the proper context. Realizing what has to be in that context and doing the evaluations around it is what I would consider core AI engineering. That comes a bit later once you have already established the product. (20:36)

Ruslan: Once you have verified that it is something users need and they see value in it, you need to focus on product discovery. It just so happened that up until this point, this is what I have been doing. Once you have a proper use case, you would actually start optimizing the prompt, latency, and cost. You might try smaller models, fine tune stuff, and do other tricks with context management. (21:09)

Ruslan: It all comes in stages and you need to exercise different skills depending on what stage your project is at. (21:37)

Alexey: There was a recent post on Twitter from Andrej Karpathy. Somebody saw that he is working on analyzing jobs. There is a database with jobs in the United States. He analyzed all these jobs and he ranked them by how easy it is to replace that job with AI. (21:46)

Alexey: The top ranking jobs are software engineers. The jobs that are least possible to replace are plumbers and people who work with their hands. You mentioned product discovery. Anyone can launch an agent even without knowing how to program. (22:20)

Alexey: You can say to build a website that is doing this, and current models are pretty good at building things. It will probably work from the first or second attempt. What sets you apart from anyone else is maybe this product discovery thing you mentioned plus the core AI engineering skills. AI cannot really do product discovery yet. (22:45)

Humans vs. AI in Product Discovery

Alexey: Can you tell us more about what product discovery exactly is and whether this is something we as humans should become better at to make sure we are not replaced by AI in the future? How can we future proof our skills? (23:19)

Ruslan: When you are building a product that is interacting with real users, you have an advantage as a human because you can understand better how real users behave, what they think, and what they need. One of the proofs of concept we built is that you can chat with your own data. Because I was playing with my own data, I could understand the requirements and needs way better. That allowed me to identify what kind of structured outputs I need. (23:35)

Ruslan: I realized the LLM might need to suggest the next best action as a part of the structured output. Coming up with features and coming up with requests is something that I have while interacting with that model that an automated tool might struggle with. It will come up with something, but whether it is useful or not is another question. Even if it would come up with it and build it, you still need to show it to other humans to see how they react to it. (24:12)

Ruslan: I am a biased person and we have real users. One thing our designers are doing is showing the proof of concept to actual real users. We do this usability interview to see how they find it. We just observe them interacting with it and we come up with more features or realize what things we need to iron out. (24:44)

Ruslan: We can then roll it out to more people. That is part of being an AI engineer. You wear many hats at this point. We need to narrow down and hit first on building something that is useful and brings value. (25:00)

Alexey: Designers and product managers are better at product discovery. What if we fire all the engineers and just give these tools to designers and PMs to let them program? What happens then? (25:21)

Ruslan: I think it is a very valid point. My take on it is that as one person you cannot be on top of absolutely everything. We still need to specialize. It is my passion to read about agentic engineering and I know many cool skills of these tools. (25:35)

Ruslan: I can actually share it with other people and that gives me an edge in developing better prompting techniques and better agentic architecture. I will do that better than just a product manager with an AI tool. You still need to specialize and you still need to know the domain in which you are working. My domain happens to be the field itself. (25:54)

Ruslan: If you are a data analyst, the domain is absolutely crucial. AI might do that in the future, but it would be hard to talk to other stakeholders and collect requirements for something they do not even know themselves. I still believe that the best combination is human plus AI, not just one or the other. We just need to give PMs access to more context so that their agents know their context of work and they could work more productively. (26:11)

Alexey: These models have a knowledge cutoff. If I just start a project from scratch and ask it to implement something like taking a picture and getting a structured output, what will it do? It will probably use chat completions instead of the responses API. It will try to inject the JSON schema in the prompt instead of using structured output. (26:56)

Alexey: It will do the things we were doing two years ago, not now. It might work or not, but it will certainly be quite behind what the industry is currently doing. This is why I feel I am actually useful. I can tell the agent not to do it that way and to check how to do this properly instead. (27:25)

Ruslan: I will actually push back on that. I think that tools with a plan mode and web search actually fix this. Whenever I develop in a framework that I am using or use a new library, the first thing I do is go into plan mode. I ask it to research the documentation for my specific use case so that it is up to date. (27:49)

Ruslan: There are even plugins for these tools that allow you to check the documentation dynamically. You do not even need to worry about that. For the discovery of new stuff, I also have some tips that I could share with you. (28:07)

Staying Sharp with X, Grok, and Meetups

Alexey: There is already a question related to what you were going with. Could you give us some resources that you use to keep updated about new findings in the industry? I would extend this question to ask how you keep yourself up to date. I open Twitter and sometimes there are so many new things that I feel there is no way I can deal with all that. (28:31)

Alexey: Last week it was just research from Karpathy in my entire timeline. There was not much diversity. Sometimes I see a new tool and someone is making a lot of money per day with a side project. It is a lot of information. (28:55)

Alexey: What is your personal way of dealing with this? (29:19)

Ruslan: Twitter is my biggest source of inspiration. I also check Hacker News sometimes and I follow some Telegram channels. Mostly ninety five percent of all the stuff I find out is on X. X is about the newest hottest thing right now. (29:26)

Ruslan: When it comes to actual work and tips, I usually go to meetups and I just talk to people. I ask them what they use because I know that it might be battle tested. For me, it is more valuable to ask someone in person what they use or reach out to them online. I want to hear about their experience rather than just reading about it from a random person on Twitter. (29:49)

Ruslan: I have a trust element regarding what a person I know says. You are right that there is a lot of noise and a lot of garbage information out there. (30:16)

Alexey: Even if it is not garbage, it is just too much. Let us pretend it is not garbage and that there is no fake information. It is still a lot when you open your feed and all the links are valid. (30:26)

Ruslan: Maybe one useful tip is that I also buy a subscription for X. Regardless of how controversial the whole platform is, I still find value in the subscription because it is the only chat that actually looks through the tweets. Twitter limited access to that data. Because many people who are in the industry are talking on X, this is the chat that knows the best. (30:46)

Ruslan: Grok is really good at finding state of the art models. Whenever I need a certain approach, such as how to do evaluations or agentic design in 2026, I just go on Grok and ask there. I know that it aggregates the best practice for my particular request. (31:14)

Alexey: John in the comments said the same thing. That was also his experience with Grok and my experience too. I really like XAI for its X search and Reddit search. I usually say to restrict the search only to 2026 posts from X, Reddit, and Hacker News. (31:38)

Alexey: I am interested in what people share. Right now we have so many articles that are generated and you do not always know if a person wrote them. I recently was preparing material for AI engineering questions. If you just Google questions for AI engineers, you will see a lot of posts on websites. (32:07)

Alexey: You do not really know whether they just asked a bot for the list of top questions and copy pasted it or actually did research. That is why I restrict it to X and Reddit. It works super well. It is totally worth the subscription to me too. (32:31)

Ruslan: I want to highlight once again the value of personal relationships. If you are building stuff in public and you meet people, they share their knowledge with you. I already learned from you today about how to maximize luck which I had not heard about before. I guarantee you that the more people you talk to, the more stuff you learn every day. (32:55)

Ruslan: That might be something they tried out and they found useful. To me, that is also a huge filter. (33:12)

How to Launch a Lean Local AI Community

Alexey: How often do you go to meetups? (33:21)

Ruslan: Right now very often because I moved to a new city. I actually organized my own meetup as well last week, which was pretty cool. It was called AI Side Hustlers Club. I wanted to specifically gather people who are doing some side projects so we can learn from each other. (33:28)

Ruslan: I am already learning a lot. It is really fun. I live by that belief that you need to establish connections. (33:41)

Alexey: How did you go about creating a meetup? You just post on meetup.com and people are pretty active there? (33:49)

Ruslan: Yes, they just sign up. You buy a subscription, you create a group, and you set an event. (33:57)

Alexey: How did you go about finding a venue? (34:04)

Ruslan: I had to walk around bars and restaurants to ask for stuff. I also called some coworking spaces, but they wanted to charge too much. I asked a friend who works in a restaurant if we could use their space, and I talked to the owners. They said yes. (34:12)

Ruslan: That is how we got the room. It was very cute and nice and very cozy, not corporate. (34:21)

Alexey: Did you have a presenter with slides or was it just everyone sharing their opinion? What is the format of the meetup? (34:28)

Ruslan: My idea is that it is non corporate. There is no networking, no slides, and no presentations. I want people in the future to showcase their work. We can ask questions such as what they used or how they solved something. (34:46)

Ruslan: For the first meetup, it was just us getting around and I had a little speech in the beginning. In the future, I want to have some presentations. We also want to do it online and offline, like in a Discord server. People share and learn together in public. (34:59)

Ruslan: I feel like there should be a place for events like that in every city. Building stuff like this is just fun and talking about it is fun. I realized that it became my hobby just to do side projects with AI. You learn lots of stuff, you talk to other people, and you make friendships. (35:14)

Ruslan: It is just a really cool thing to do. I also saw that you are starting something like this. I fully support that. Everybody should do it. (35:41)

Alexey: In my case, this is something I want to do online, not offline. I think it is similar. I really like the way you approached it because the biggest struggle for offline events is getting a venue. I really like your lean approach. (35:53)

Alexey: Just get a restaurant because the important thing is just to get people together. Then you start making connections and showing what you are building. (36:09)

Ruslan: I have learned a lot that perfectionism is a very bad thing. I always need to push back against my perfectionism. I organized this meetup with a friend of mine and we had so many plans. We wanted to make a website and a presentation, so we needed a screen. (36:26)

Ruslan: Eventually, we just did the meetup and we just got people together. I think that the imperfect meetup that happened is way better than the perfect meetup that would never happen. The same goes for AI projects. I try to scope my projects to be as small as possible. (36:50)

Ruslan: As imperfect as they are, some of them are complete and they are bringing some value. Some people are using it and it is fun. My strong advice is just build something small, learn something with it, and then move on to the next. (37:04)

Alexey: Tell us more about the side projects you have right now. (37:25)

Ruslan: One of them is a Chrome extension called Catch a Flat that refreshes the Immobilienscout page for you. For those who do not know, that is a classified place where you search for flats in Germany. It is really hard to find a place to rent in Germany. This extension refreshes the search page for you in the background. (37:35)

Ruslan: You just run the extension and whenever a new flat appears that matches your search, you get instantly a notification on your Chrome. That way you can actually catch a flat, otherwise it would be gone because too many people apply. I have one hundred fifty users and I got three donations from it which is super nice. I did not expect anything. (37:57)

Ruslan: It is completely vibe coded. Every now and then I asked the AI to review if it is fine, but I also open sourced it. It is very imperfect but it works. Two weeks ago I got a donation and the person said they found a flat with it. (38:19)

Ruslan: I thought it could not be better. I just had a side thing for a week and now I can buy myself a coffee. (38:28)

Alexey: Exactly. (38:33)

Catch a Flat: Vibe Coding and Side Hustles

Ruslan: I am also building an app for my phone that I am going to launch soon. It is called Phoneless. The idea is that you just spend less time on your phone. It sends you some funny notifications. (38:49)

Ruslan: I am working on many projects at the same time because I like to switch between them. (38:57)

Alexey: Do I understand correctly that the motivation for these projects comes from your own use cases and struggles? I guess you did not just sit down and wonder what to do. You probably had to find a flat yourself and you realized the limitations and how you can automate it. (39:08)

Ruslan: Exactly. My goal with the projects is to maximize fun. Solving a problem that I struggle with is fun for me. It is also fun if it is a problem that my friends or my wife is struggling with. (39:33)

Ruslan: Solving stuff for them and showing them it works gives me so much motivation. Before, I thought I should maximize productivity or the money I am making with side projects. When I tried to maximize those, I instantly burnt out and stopped doing stuff. Maximizing fun or passion is my way of doing it. (39:41)

Ruslan: That is why I have been consistently doing lots of stuff for a year. Just do stuff that gives you passion. Switch between projects all the time and abandon them if you want. Just do whatever. (40:15)

Alexey: I do this all the time. Thanks for the advice. I should not feel bad about it because I am still doing something all the time. (40:29)

Ruslan: That was my revelation once. (40:34)

Alexey: I also do a lot of side projects, but none of them are making money. I follow some people on Twitter who come from the indie hacker community. A few years ago, there was a big thread of people sharing their Twitter accounts. I still follow quite a few of them. (40:42)

Alexey: They are building side hustles. They are probably also maximizing fun, but in their community, it is quite common to share numbers. They say they built a website and share how much they are making. I am thinking that I am maximizing fun but maybe I am leaving some money on the table. (41:10)

Alexey: I spent some time, but I am not getting money back. You said you also try to do something like this. Tell us more about this experience. (41:42)

Ruslan: If you want to launch a successful business or a project that actually brings you money, it requires a lot of different skills. You need to come up with an idea and validate it. You need to design a proper interface and have very clear product messaging. You need to actually build it to have a nice, smooth, and fast frontend or app. (42:04)

Ruslan: You need to have a backend and set up payments. You need to come up with marketing strategies and figure out the channels. You need to do the whole legal thing which is another world. There are so many components to it. (42:19)

Ruslan: I believe that if you are doing a side project that teaches you one of those components, then by project number twenty, you would probably gain many skills. I am doing it as a side thing. These indie hackers go all in and often go to countries where the cost of life is very cheap. They have some savings and they just grind for a year. (42:40)

Learning the Business Side through Small Projects

Ruslan: That is not how I live. I enjoy my work life balance and I love to spend time with my dear ones. I just do these fun projects and I deliberately think that I want to learn app development or how to deploy stuff. I might want to implement payments. (43:04)

Ruslan: That makes me a better AI engineer because now I have a much better overview of how these systems work on a bigger scale. I am doing something that might create another source of income. As I do more projects and follow fun, eventually I will gain the skills to actually start something with a higher potential for success. (43:17)

Alexey: I really like your attitude and what you mentioned about trying to scope the projects to be as small as possible. You learn one specific thing. If you break down starting a business into multiple skills and think about how to learn each skill in isolation, then by project number twenty you will have a good portfolio. Those indie hackers already have successful projects and a playbook. (43:39)

Alexey: They already know how to take whatever works and replicate it in the new domain. I do not have that yet for software as a service projects. It is quite interesting what kind of possibilities we now have with all these AI tools. (44:15)

Ruslan: Each of us has a personality and something authentic about us. Because I have known you for a while, I know that your authentic personality is bringing knowledge to people. That could be your main business. It is already your business, but this is the stuff you feel natural doing. (44:39)

Ruslan: That is where you will have the most success. I want to emphasize that you should do something that feels good for you and that you resonate with. It should make you stay at your computer for a few more hours after work every single day. Because you resonate with it, it would feel like less of an effort to actually do it. (44:54)

Alexey: Thank you. I see a few questions. John asks if you have any experience with AI hackathons. (45:25)

Ruslan: I do. We did some inside the company and that was super cool and interesting. I actually really believe in hackathons because you have this dedicated time and everybody is super passionate and driven to do stuff. Because you have time constraints, you cannot do a perfect thing so you have to do something quick and dirty. (45:41)

Ruslan: I know many companies and people who started their startups or side projects that originated in a hackathon. We are going to do some hackathons for my community as well. If you can get your hands on any hackathon, just go for it. It is really fun. (45:56)

Alexey: For hackathons and for projects in general, one thing I see in the community often is that people struggle with ideas. I do not have this problem. If I want to work on something, I always have a pile of projects that I can choose from. I never have a lack of what to work on. (46:15)

Alexey: Sometimes there are people in the community that do not necessarily have this backlog of ideas. Do you have any suggestions for them? One suggestion could be to go to a hackathon and they would just give you a project to work on. If I have a few hours per day and I want to spend it building something meaningful, can you suggest a source of inspiration for a project? (46:37)

Ruslan: The approach that works for me is to just do something stupid. Do something you want to tell your friends about later and laugh about. Find this source inside of you. I made an outfit checker that just sends some images to a bot and builds an outfit because I do not know what to wear. (47:02)

Alexey: You have to have a problem first, such as not knowing what to wear, and then you want to solve it. Is that right? (47:24)

Ruslan: All of us have many problems, so just pick one. Many people think it has to be so big and huge, and perfectionism kills many projects before people even start. Just pick a problem, ask the AI how to solve it, and let it completely code it. Learn how to deploy it and show it to your friend. (47:36)

Ruslan: This is your first project. (47:49)

Alexey: How do I just pick one? What if I sit down and stare at the screen? Maybe you are the person to ask. (47:53)

Ruslan: I have an answer. You do not come up with an idea when you sit in front of the screen. The idea comes in the shower. It comes when you go on a walk or when you talk to someone. (48:02)

Ruslan: Just have a phone nearby to write it down. It never comes to me when I sit in front of the laptop. I run towards the laptop to actually do something. (48:12)

Alexey: Taking a break and dissociating from your daily work and tasks is necessary. It comes from lightness within you, not from being super deeply focused to come up with the best idea in the world. It should be simple and stupid. Starting simple is my only suggestion. (48:26)

Sourcing Project Inspiration from Daily Life

Alexey: For me, the source of inspiration for projects to build is usually things I do. I do something and then I see that something does not work the way I want. There is a clear area for improvement. Recently I was running a tool on my laptop, but the problem is you close the laptop and it is not working. (48:48)

Alexey: I was thinking about what I could do. I thought maybe I can run it on my old Android phone. I broke the phone, so it did not work out, but at least I had fun destroying my phone. Then I thought about renting out a computer and using SSH, but I did not want to open ports because somebody can hack in and wreck my computer. (49:06)

Alexey: What do I do? Visual Studio Code has this automatic port forwarding where it detects that something is running on a port and automatically forwards it to your computer. What if I do not use Visual Studio Code or it is not open? I still want the ports to be forwarded, so I asked the AI to implement a terminal app that does exactly that. (49:35)

Alexey: This was just one of the examples that solves a problem I have right now. I found out that there are so many problems I have right now. The list is so long that I do not even know where to start. (49:59)

Ruslan: That is the very unexpected outcome of doing projects. You just come up with more project ideas all the time. You just need to start with one simple stupid problem that bothers you or that you want to try out. It has to come from fun and from lightness for someone who has never done a project. (50:24)

Ruslan: If you talk to someone who has been doing projects, all of them have twenty more ideas of what to build next. (50:41)

Alexey: So you can talk to them? (50:44)

Ruslan: Exactly. Talk to them and ask what they are struggling with. They will tell you what to build. Some of the students of my course are doing exactly that. (50:49)

Ruslan: They say they do not know what to pick up and I give them a project to work on. For example, right now I want to create issues on my GitHub project through voice. I just record a voice message to a Telegram bot. It determines which project it is about and what exactly the issue is. (50:57)

Ruslanan: It then goes and creates an issue on GitHub. This is a super simple thing. Yet this is a problem I have and I do not have time to implement it because I am working on something else. The student can implement that. (51:13)

Alexey: If you are looking for ideas, you can just let me know. (51:28)

Ruslan: I will definitely drop you a long list of stuff you could do. I love working with Telegram. That is why my first project was in Telegram and I have made many bots, such as a bot that translates from German to English for me in a natural way. There is another cool way of doing it in Cloudflare where you can basically deploy it for free and run up to one hundred thousand requests per day. (51:34)

Ruslan: I highly recommend Telegram for building stuff. (51:55)

Alexey: Telegram is amazing because it is so easy to create a bot. You just talk to BotFather and you have a bot. At the beginning, you mentioned that you worked as a data scientist and your official title was data scientist, but you were doing more ML engineering. While working on this, you realized that you want to work more on GenAI stuff, so you became an AI engineer. (52:04)

The Future and Longevity of Data Science

Alexey: Somebody asked a question regarding if you think there is much future in data science. (52:28)

Ruslan: I think there is definitely a future in data science. What you define as a data scientist depends on the company. In some companies, it is a data analyst who might do some forecasting models. In other companies, like OLX where we worked, a data scientist is someone who develops machine learning models and deploys them. (52:39)

Ruslan: Regardless of the definition, I think it is still valid. You still need to understand what you need to build and you still need to do some stakeholder analysis. You need to understand what other people around you might need. You need to properly have a clear product vision for that. (53:05)

Ruslan: Identify what would be necessary and what would be the MVP. Properly plan out implementing it so you could test and verify. Run some AB tests and maybe have some baseline in the beginning. I still believe there is a space for those professions, whatever they mean. (53:13)

Ruslan: It is definitely going to be accelerated by AI agents who know your context and who enable you to build stuff faster. It is just a reality nowadays. It will be more relevant in half a year or a year that you need to work with agents as your copilots or core workers. Just jump in faster so you could teach others and maybe profit from it later. (53:29)

Alexey: What about this perspective? With these tools, any backend engineer or software engineer can do the work of a data scientist. Why are data scientists still needed if you just give these tools to your backend engineer and they train all the models? (53:55)

Ruslan: They might, but I think sometimes you need to spend time on the system to improve it. They can build some dashboards or train a machine learning model. There was actually an article from Anthropic that said an agent fine tuned itself. It found the data, made sure it was high quality, did the fine tuning, and deployed the model. (54:19)

Ruslan: You still need to spend time thinking about it. You still need to identify better requirements for the system and improve it further. If you just need to get something done fast and dirty, using these tools is good. If you are working in a company and there is a higher standard, you need someone dedicated who thinks about it and improves it all the time. (54:50)

Ruslan: You need someone who verifies that there are improvements. I still believe that we will need all these people. The quality will be higher. (55:06)

Alexey: Data scientists have multiple superpowers that engineers do not necessarily have. One is business acumen. Engineers are often more focused on building things and less focused on product discovery. This is something that PMs and designers do, and maybe analysts are more involved. (55:23)

Alexey: In my experience, data scientists also have more of this business exposure than engineers. Data scientists are better at translating the requirements from business into machine learning terms and the same with AI these days. Another thing data scientists are really good at is evaluations. For engineers, this is a more foreign term. (55:56)

Alexey: As data scientists, we have been doing this for a very long time. We know what it means to evaluate a machine learning model, and for AI it is basically the same thing more or less. The tools are different, but the approach is the same. (56:23)

Ruslan: Exactly. (56:30)

Alexey: How about getting into the industry without a degree? (56:40)

Ruslan: That is a hard question. I think you need to maximize your luck surface again. Talk to people. I know that some people join as software engineers without ever getting a degree. I just met a guy recently who did that. (56:47)

Ruslan: He had some side projects that he did and that was good enough for the company to hire him. Just do side projects. I do not see any other way to be honest. If you are only starting out, getting an internship is also a very valid way. (57:04)

Ruslan: I have not been looking at how many internship positions there are posted or if it is still easy to get them. I would just say to do your side projects. They will definitely be useful for you in your life. At least you have some stories to tell, and at best, they could also lend you the job. (57:24)

Skills over Degrees: The Realities of Hiring

Alexey: When I interviewed people, I never really cared about what they have in the education part. I never actually even looked at it. At the beginning, you have a summary and then work experience. I do not even scroll to the education because I could not care less. (57:39)

Alexey: The important part for me is whether they can do the job or not. This is what I am testing during the interview. I do not really look at the education. (58:05)

Ruslan: I totally agree. (58:07)

Alexey: Whether it is MIT or the university I graduated from in Russia, nobody knows about it. It does not really make any difference. Maybe in MIT people are smarter. My goal in the interview is to determine whether this person will be able to do the job. (58:14)

Alexey: While there is probably some correlation with having a degree, I do not look at this. (58:32)

Alexey: One of the issues I face when working on personal projects is that I run out of tokens very quickly. What do you do? (58:40)

Ruslan: Use plan mode. I actually have a really cool tip. Use templates. Many people start projects with a prompt to build a whole frontend from scratch. Obviously, in order to generate many files, you are going to burn many tokens. (58:54)

Ruslan: Why don't you just look up a template from Next.js that would save you a lot of tokens? That is one tip. Second, try to think clearly about what it is that you are trying to build. When working with frontend in the past, I burned through many tokens because I did not really have an idea of what I want to build. (59:15)

Ruslan: I am trying to learn Figma right now because it is apparently easier and faster to iterate there. Just have a sketch and think about it for a few minutes. These tools have a skill called brainstorm that allows you to brainstorm very well with AI to really narrow down what it is that you want to build. Give it to plan mode so that it discovers how to build it fast. (59:34)

Ruslan: Using existing code and reusing it with templates is good. (1:00:02)

Alexey: This is what some project bootstrappers do. (1:00:10)

Ruslan: Another little tip I am using a lot recently to get clarity on what I want to build is to use voice mode. It is actually really hard if I need to put it in words as a prompt. I just start the voice mode and I completely dump my brain into it for five minutes. I try to look at it from all the perspectives. (1:00:19)

Ruslan: I then ask it to generate a summary and structure my thoughts, and then I give this as a prompt. I do not have to spend time thinking and properly phrasing stuff. I let the AI do this job. (1:00:35)

Alexey: What is your workflow? Do you just create a new folder, start an AI session there, and do your brain dump? Or do you first use a web interface to understand what you want to build and then start an AI session? (1:00:52)

Ruslan: Right now I just use a coding session right away. Sometimes I would just copy the code. I did a Figma plugin a few weeks ago and I started from a template. I then used the plan mode and just dumped my brain into it. (1:01:07)

Ruslan: In the future, I want to learn Figma especially when building interfaces because that is what I am passionate about currently. I would actually start by doing some very easy high level mockups. You can also pass them to an AI to implement based on that. Figma released an MCP recently, but you could also just use screenshots. (1:01:21)

Ruslan: I use the twenty dollar subscription. At work I have the one hundred dollar one because I use multiple things at the same time. At home with twenty bucks, I like that it is limiting me in how much time I can spend doing it. I try to have a deep focus and think clearly when I am using it. (1:01:46)

Ruslan: When I am out of credits, I take a break and go play guitar or talk to someone. (1:02:04)

Alexey: Do you use other bots too? (1:02:10)

Ruslan: I cancelled my other subscription a few months ago, but I think I will take it again. I tried all the models because I feel I need to try everything to be on top of things. I still struggle with what exactly I would recommend, but probably Cursor because you can try everything and it is a bit more visual for non coders. For coders, other specialized tools will give you a lot for twenty dollars a month. (1:02:16)

Alexey: I would also recommend GitHub Copilot. It only costs ten dollars and it gives you way more than ten dollars in value. (1:02:56)

Using AI to Learn Instead of Just Coding

Alexey: Last question. Do you think you learn more building with AI versus previously? Maybe we can go deeper now with things and we just learn prompt engineering rather than something else. Do you think AI is helping us learn or actually preventing us from learning? (1:03:12)

Ruslan: The natural way of things is that people do not learn. They just vibe code and let it be. I had to realize that and then act against it. Now I am trying to actually learn from what I code. If it is a production system, I need to make sure I understand every single line of code that is being written. (1:03:37)

Ruslan: For my personal projects, sometimes I do not, but for the work ones I do. This is a very powerful technology to let you grow your skill set. Usually people do not know exactly what is happening when they vibe code. I would recommend you take your time and ask exactly what is happening on every line. (1:03:51)

Ruslan: Rename things so that you have a clear understanding when you look at the code. Learn more because this is the fastest way to learn right now. (1:04:16)

Alexey: How do you decide whether you want to learn more about a project? For example, I have a project that is a static website generator written in Ruby. My site is very slow now. I decided to rewrite it in Rust. (1:04:31)

Alexey: I do not know Rust. I have to fully trust the AI that it is doing the job right because I do not even have the desire to understand what it writes. It is Rust, and I do not know Rust. The only thing I learn here is exactly what you need to do in order to build a Rust project. (1:04:53)

Alexey: I am learning a little bit, but I cannot say I learned Rust even though I have a project written in Rust that seems to work. (1:05:10)

Ruslan: I know what you mean. It is the same for me with TypeScript. I do some stuff in Kotlin too. I have a very comprehensive documentation file that I refer to in my tools. I at least need to make sure I understand on a high level what is happening inside the code and that is enough for me. (1:05:22)

Ruslan: I know roughly what the app structure is and what the files are. I know how they define the behavior. I think you need to dig deeper only if you have to. If you are running something that is mission critical, then make sure you understand every line. (1:05:39)

Ruslan: If it is just a project on the side, it is fine with me if you do not go deeper as long as it works. (1:06:00)

Alexey: I share this attitude. Sometimes I really want to understand what is happening. With this project, I actually wanted to learn Rust for the last few years, so now I can finally create Rust projects. I still have no idea what is happening though. (1:06:08)

Ruslan: Knowing one programming language is an advantage. I am learning TypeScript now and I just do it with AI. The AI generated a whole study plan for me. It shows me how everything is related to Python concepts for all the stuff it describes. (1:06:27)

Ruslan: That is much more graspable for me. I do not think there is a TypeScript book for people who use Python, so that really helps me learn it faster. I would recommend that if you already know one language, you should learn other stuff in relation to that. (1:06:51)

Alexey: I think I have kept you long enough. It was really amazing to ask you all these questions. Thanks to everyone for asking these questions. It was an amazing discussion. Thanks a lot to Ruslan for joining us today for the second time. (1:07:01)

Alexey: I would be really interested in catching up again in a year. You have been in AI engineering since it formed. It is really interesting to see your perspective on things. Thanks a lot for doing this today. (1:07:15)

Ruslan: It is my pleasure, Alexey. Thank you. (1:07:30)

Alexey: That is it for today. Everyone have a great week. Thanks for joining and see you around. Enjoy the new city. (1:07:34)


DataTalks.Club. Hosted on GitHub Pages. We use cookies.