Pybites Podcast

#107 - 8 tips for succeeding in the software industry

Julian Sequeira & Bob Belderbos

Welcome back to the podcast. Today we share 8 tips in response to a question that we were tagged on @ Twitter.

Chapters:
0:00 Intro
1:54 Wins
5:46 Quoting the question / intro topic
7:18 1. Communication is everything
8:54 2. Deliberate practice
10:06 3. Adopt a growth mindset
12:12 4. Be a generalist
15:03 5. Focus on the compound movements
16:32 6. Know the business domain you are in
19:00 7. Share your work / teach others
22:32 8. Do a bit of networking every single week
27:08 Summary of the 8 tips
28:02 Books
30:14 Thanks for all your feedback 😍 🙏
33:00 Outro

Pybites Flashcards
PDM program

Mentioned books:
- Mindset
- Peak
- Grit
- 177 mental toughness secrets
- The obstacle is the way
- Range
- Domain-driven design
- All books from the podcasts

And last but not least thanks for all your feedback 😍🙏

You can reach out to us through our Slack or send an email to info at pybit dot es.

And in return, I'm going to spend 3 hours reading a book wrapped in a blanket with the heater on in the corner and not see another human soul. Right. So challenge yourself, reward yourself, because it is something you need to do and it's super valuable. Hello and welcome to the Pibytes podcast, where we talk about Python career mindset. We're your hosts. I'm Julian Sequeira. And I am Bob Valdebaus. If you're looking to improve your python, your career, and learn the mindset for success, this is the podcast for you. Let's get started. Welcome back, everybody, to the Pibytes podcast. Here's Bob Eldeboss, and I'm here with Julian. How's it going, man? Yeah, awesome. I have too much caffeine in my system, so I'm. Excuse me if I'm rattling today or I just. You're on fire. You're on fire. This morning. Your messages, you running all over the place. It was great. Yeah, I liked it. I liked energy. Yeah. So all good? All is good. I am. Well, actually, this is the first time I think you and I are recording. We always say this after a lot of a string of guests, but what a month it's been a month. Yeah. We had Jim Blaze, Cassandra. Cassandra. Was that all in between? Wow. 104, 105, 106, and 107. The comeback. Yeah, but we were together on the blaze episode. Yeah, yeah, that's true. I mean, we love. We love our guests, but it's still nice just to be the two. Obviously, it was just the two of us. It's getting less regular. Yeah, yeah, exactly. Anyway, we want to keep it pretty tight today, so. Yeah, I got a lot of things to run through, so let's go through wins. You. You first. Okay. The wins, um. Wins. Wins basketball. My son is playing, um, in a club since a year, and we have games and stuff, and I'm just noticing how great that is for him. I played myself, um, eleven to 16, so he. He beat me because he's nine, so he's already playing. And just the team context. Right. Collaborating and. Yeah, also doing real games. So winning a bit of competition element and the sports. Right. Physical movement. So it's just very positive and I much enjoy it. And last Saturday, they won the game by one point. And it was, I think we, as parents, we're more nervous at the end, how equalize it was than the actual kids. So it was really fun. Yeah, that's awesome. Nice work. That's very, very cool. Give him a high five for me. I will. Do that? Yeah. What about you? Personal win? Well, I could say family stuff, but I'm going to be really selfish, really selfish today. So I mentioned in the last episode that I just got back from some travel, and one thing I didn't mention is that while I was walking the streets of Tokyo, I stumbled upon a Pokemon center. So for those of you listening and watching, I am a big fan of Pokemon, a big fan of Nintendo in general. So to see one of those was just mind blowing to me. And so I came back when the shop was open and went inside and spent way too much money, bought stuff for the family, for myself. So for those of you watching on YouTube, I get this cool gengar plush toy and I got this awesome coaster with Charizard on it, but it says Lizardon because that's like the japanese name. Anyway, I'm not going to nerd it up more than Python, but it was. It was really cool. That's so cool. Nerdy. Bit of a dream and bit jealousy. Got to go to Tokyo. That's so amazing. Yeah, it was awesome. But as a combined win, I just wanted to share with everyone watching and listening. We just also, we're coaches, right, with PDM, with our client program and everything. And yes, everyone has wins in the program. It's awesome to see that stuff. It's just we want to be able to share those because we're like proud parents. When we see the clients, our clients achieving things, we. We're super proud. So a win for us this week was seeing one of the guys, Michael, make his first pull request on an open source repo. And it was massive and he was super proud. Do you want to elaborate, Bob, or is that enough? I think that's enough. Yeah, it's definitely a scary thing to do. And seeing somebody growing with us through PDM and building the skills and the confidence and then be able to do it and really have a thoughtful discussion about it and seeing how much then he learned from it. Right. And, yeah, it's because there was typing involved and, yeah, a lot of stuff. And it was really cool. It really fills us with joy seeing that. And, yeah, something I think he thought was not possible yet. He's doing it now. So that's awesome. Yeah, that fills me with a lot of pride. So I'm very happy. All right, so look, we've got a lot to run through, so let's dive straight. In this episode, we're talking about what tips for people breaking into this industry, right? Yes. And I want to quote a tweet we were pinged on in very good company. I'll expand on that. So let me read the tweet. So it's from PI mode dev. Well, that's the name. The handle is at PI mode D in 8th habit. Kovi say to have a quantum improvement, we have to work on paradigm, not practices, attitudes, which will give us linear improvement at pibeites, at Uncle Bob Martin, at disc roles and others, please. What is your advice for a beginner in the industry? Follow up tweet. The paradigm means assumption, theory and perception. What are the paradigm, our paradigms, to believe and not believe in software craftsmanship industry. So first of all, we're honored to be in the company of Uncle Bob and Mike Driscoll. And secondly, that was a bloody mouthful to read, I tell you. Yeah. Did I do well? You did well. You did well. It's okay. Yeah. Mike. Mike Riskall, you had on the podcast as well, so that was nice. And yeah, we could just have jumped in with an answer, but actually we promised, let's think about it a little bit more and put some effort in it. And yeah, we decided to do a podcast. So here, here we are. Yeah. So, PI mode dev, this is for you responding to your request for some tips. So, Bob, I'm going to kick it off, if you don't mind. We got eight, right? So we can. Eight tips. So we'll try and put it for each. We might just bleed into each other. Who knows? Who knows how this will go? The first one is close to your heart. That's why I said I'll go first. Number one is communication. So communication is everything. I mean, everything. Your code also works as communication, right? So the clearer your code, the notes that you have in the code, like the comments and everything like that, that's a form of communication. But don't forget the communication skills of actually working with your stakeholders. Right. You have to be able to speak with your manager, with your teammates, with the people that you're building for the teams, whoever it happens to be. And communication is everything. If you cannot communicate your ideas, if you cannot communicate what you want, what you need, deadlines, extensions, whatever it is, even roadblocks and complications, then you won't find yourself being very successful and people might actually think you're being a blocker yourself. So when you can communicate well, you will find that success. And I'll stop at that one. Yeah, well, that's over communicating. Yeah. No, that's awesome. I think we can leave it to that. Just that. Yeah. Cannot be stated enough like it's not only about the tech skills. Code is communication to your future self, to your team, but also the whole process before getting to the code, the requirements, the design, there's a lot of communication going on there. And the better you understand other people and can communicate your vision, the better that will ripple through and suffer. Yeah. All right, number two, go for it. Number two, deliberate practice code every day. Drop tutorial paralysis. Learn to be resourceful and adopt jit learning. So, a whole mouthful, but we've talked about this a lot. I think our second episode was already about tutorial paralysis. But, yeah, coding is such a practical craft that you need to really hone those skills, and the only way you can really get very good at it. Reach mastery is to code every day, but not just code for the sake of coding. Seek more advanced goals as you go. So move that skill. Yeah. So be very deliberate about what you do. And, yeah, ditch the books. Be resourceful. Know how to find the answers, even how to ask the right questions. Right. And Jit learning, we also spoke about that a lot. Just in time learning. So again, ditch the books and all those resources. Use them as stuff comes up. Use them like we used to use encyclopedias back in the day. Seek out the thing you need. Get it, use it. Put it back on the shelf. Yep, I like it. Okay, I'll leave it that. Number three. Number three, adopt a growth mindset, you know? So that's a big one. Yeah. Mindset related. It's a big one because, you know, as you break into this field, into this industry, you're going to hit roadblock after roadblock. And it may not even be code related, it may be process related, it could be team related. Whatever it is, it's really important to have a growth mindset. You know, approach every situation from a perspective of growth. So learn from your mistakes. Don't just sit there and beat yourself up or think that you're the worst or that you're. You're terrible. Look at it as an opportunity to learn. You know, embrace that impostor syndrome. So whenever you're feeling fearful that you're taking a big step, that this is something scary, realize as one of those quotes that I like from Levar Burton, fear is just excitement waiting to come out, you know, so embrace it. Embrace it and jump into it, because that's when the growth happens. And, yeah, this applies to all aspects of, you know, I just want to say your career in general, because obviously you'll have things like code reviews that don't go to plan. Whatever it is. That's fine. But then you'll have things like, say, being passed up for promotion or just maybe being left out of a conversation or something you have to navigate. That's not necessarily coding related. So it is important to have this mindset across everything that you do. The obstacle is the way. Right. Like Ryan Holiday's book. Also like 177. I will link it below. The tips for. Basically that book is awesome. And it just talks about expect things to go wrong, to be tough and how do you deal with it? You can complain, whine about it, or as Jim Rohn says, you can. Don't wish it was easier, but wish we were better. Exactly. I think you hit that on all levels. The sooner you can adapt to that mindset, the better. Yeah. All right, cool. Take the next two. Okay. Number four, be a generalist. Specialize, especially when you start out later. You can specialize in certain things, but first you want to get an overview, right. So if you. As these tips are for starting out in the industry, I think it's really good, and especially when you start out in your younger years, to taken a lot of different skills to develop kind of that well rounded profile. So I think if you look back at our careers, right, like in the Sundays and when we were starting out, we were just get on everything, right? Like shell scripting, PhP, web development, web design, Unix, you name it, right? We would soak it all. We were like sponges. Right. And then later on, you kind of in niche down, and now we're into coaching and python. So that's pretty specific. But, yeah, I think that wide orientation really gave us a lot of good experience, and also we got clarity on what we really wanted. Yeah. And in that sense, I still have to read it, but I heard a lot of good about the book range by Epstein, I think. And that's all about why generalists succeed and why specialists might be too narrow in their focus. But, yeah, well, we can do an episode on that when I've read it, but, yeah, that book comes to mind when we talk about generalists. Nice. Make sense? Yeah. Get it. That's good. Do you have similar experience in your early days that you would just take on more things than now where it's now more narrow? Yeah. You know, especially when I was younger, um, I'm still pretty young, but when I was younger, um, you don't quite know what it is that you want, you know, so you just, like you said, you're like a sponge. You're just trying to find your way, find out what you like, um. And for me, it very quickly became a troubleshooting thing. I didn't even mind if it was on hardware, software, whatever. And then slowly I started niching down, as you said, you, you know, as we discovered Python, I'd already tinkered with C and I can't remember the other one. Was it TCL? No, Tcl is that one? Could be, yeah. I think it was tickle, whatever it was. You know, I remember playing with these things and go, yeah, you know it is. But then Python clicked and that's when I decided to niche down on that with you and really enjoyed it. So. Yeah. And then again, when we started with Python, cast the net open. There's so many bits and pieces with Python. I remember I was looking at flask and OpenCV and just command line stuff, whatever else. And we landed where we landed. Yeah. Awesome. All right, go number five. Number five, focus on the compound movements, certain language constructs, testing, refactoring, software design over shiny new objects. So that's a bit counter to number four, right? Being a generous. But once you start to niche down, I think the best bang for your buck is those compound skills, right? And I think every developer we wrote about it a few weeks ago, shiny new object, new framework comes around. We need to see it. New tech skills. It's a fast moving target, right? So it's very easy to get distracted with all these new shiny objects. But to be successful as a developer, and we have distilled this in our flashcards, it's a set of ten to 15. You can count them on two hands. The core skills you really want to invest in just keeping that focus on those compound skills. Again, testing, refactoring, software design. If you're in python, of course, the standard library, the built ins. Yeah, that's really important. And that's where we see people get very distracted. And again, that's that tutorial paralysis as well. But, yeah, just keep in mind the compound movements like fitness do those squats and bench presses and that's probably going to get you the most results. Love it. Awesome. And we'll link those flashcards in the show notes so you can see what those are. Okay, number six, I really wanted to take this one. That's why I asked you to do two in a row. Skip it. So know the business domain that you are in. Um, you know, I like this, this quote that you wrote down, bob, code does not live in a vacuum. It solves a real world problem. That's a quote from my dear friend Bob Beldibos. He's a nice guy. Nice guy sometimes. But no, the reality is. You're welcome, buddy. You're welcome. The reality, though, is that when you're coding, you're coding for a specific team, a specific organization company in a specific industry. You could be a code, a coder for a marketing department, you could be a coder for human resources, for some deep software stack, for DevOps, just throwing out these buzzwords now. But the reality is you're coding for someone. You're coding for something, and it's really important that you understand that industry. So the perfect example for me is if you're coding for, say, a marketing team or a marketing organization or company, you really want to understand what that team's vision is. You want to understand what their clients are like, what that team wants. Don't just build in a vacuum and then put something out there and then assume that that's okay. This ties in well with, number one, that communication step, by the way, because if you can communicate and work with them and understand, you really excel as you build for this domain. So one of my tips just quickly for that is ask if you are in these positions, coding for these other teams. Ask for the day off, and then go and partner with someone. Go and pair up with someone in that job that you're supporting, that your tool or app or services are supporting, and go and spend the day with them. Shadow them, sit there and understand what it's like to be them, to be the user and go from there. I think it's a really important thing you can do. Yeah, no, this is a super valuable one. Yeah, no, the business. So if you're working for construction or if you work in the movie business, that will have a lot of influence on the code basis and how things are done. Right. So, yeah, if you know that business domain well, you will set yourself apart. Yep. Right. Seven and eight, count up your alley. But I think eight is you will do better. So I will do something. Well, one of my favorites as well. Right. Share your work, teach others. That's like double, maybe even triple win. Right? Because by teaching others, it's something we wrote about it right on the blog as well. Not only teachers teach, developers should do the same. Something like that. An article, right, where we also discussed the format of teaching, that it's okay to make mistakes. Right. To show the raw process, be really adept, adopted that. But, yeah, if you teach others, you just seek a way better understanding. Because how often have you, did you think that you would grasp a python concept or whatever. And then you had to explain it to somebody else and you're like, actually you weren't that sure. Yeah, that's constantly happening with teaching. Right. But also like sharing your work. So apart from understanding it better, you help others. People see that you have a proactive approach, that you're active, that you have that mindset of helping others. And we think that goes a long way. We often mention that GitHub is the developer's resume. So all that teaching and getting your work out there leads to content which will enrich your profile again, multiple wins, better understanding, building up your portfolio, helping others cannot go wrong with that. And it's a skill to maintain as you get into the job. Right. So you want to make sure that you continue to train and skill up and share your knowledge with your peers even as a junior. Right. Doesn't matter what level you are, because that's a super valuable skill to companies these days. They really want to have people in their teams that are willing to have, again, growth mindset and share and teach and really not just work in a silo. So, yeah, I don't want to mention two examples of how that helped us get on the radar. So when I was interviewing for a Dev job, we just started Python pivots the blog, and I had an interview question about a deck. And I could actually go to the blog and show an article about deck, which was allowed. I could just use anything. Right. How cool is that? I could not only answer the interview question, but I could also show, hey, I wrote about this, that of course made a good impression and 100 days of code that got us on tag Pythons radar and that two courses reproduced and it was just us doing the 100 days of code challenge and just talk about it every day. We did that so consistently that we ended up with 100 scripts with a very cool repo, with a lot of stars and, yeah, then it becomes, you get noticed. Right. And, yeah, so that, that's invaluable for. Especially for when starting out. Right? Or you build up, you build up an asset and that takes time. So starting out, it's just good to do that from day one and just be consistent. Exactly. Yeah, yeah. Angela, can I remember surname book grit. If you talk about persistence. Is that duckworth? Yep. Thank you. There you go. I got you, buddy. Yeah. So go. Nice. Okay, well, look, this is the perfect segue into the last one, which is networking. So do a bit of networking every single week. A perfect tip for this one is set a weekly reminder, like, just like you would to set a reminder to take the bins out or the garbage out every week. Set a reminder to head on to LinkedIn or wherever. I don't set a reminder for that. For what? The bins? Yeah, you don't. Oh, that's right. You have the bins every single day. That's why you're always like, I'm taking the garbage out. Sorry I derailed you. What was I talking about? No, so with, with the networking piece, when you try, especially as you're trying to break into the industry, right. It's really important to get your name out there. There's a million people vying for positions, right? So who is going to get the position? The memorable person who reached out made themselves valuable to the recruiter or the hiring manager or whatever. The person who's been sharing their work. As per your tip just now, Bob, the person who is out there and has some confidence in themselves and building and growing, that's the person that's going to be memorable. And, you know, Pip, everyone else to the post, as in get the job before everyone else. So when I say networking, I mean, reach out to people in companies that you're eager to work in. Reach out to people on the teams that you're eager to work on. Reach out to people who have connections in companies that you might be interested in and see if they're willing to hook you up. You know, reach out to us, to your friends, to your other family members, anyone who may have a contact. And you would be so surprised the people that you will connect with if you just have that confidence in yourself to have a conversation. I have connected from for PI bytes Pieblights benefit. I have connected with so many people that have been able to help us grow PI and share things out and just overall be supportive to Bob and I. I've been able to do that just through the most random conversations that in a million years. What a quick example I'll give is just being out at a mate's birthday party in the middle of Sydney at a whiskey bar. I connected with a guy that Bob and I ended up working with for like, six to eight months, and he's now a really good friend and that sort of thing. So don't be afraid. Network every week. Don't be afraid to talk about what you're interested in and ask people if they know anyone else. So there you go. Yeah. Yeah. It was a contact in a former employer that actually helped me get a job here in Spain. So it wasn't for that contact might not have stayed here. Right. It was very crucial back then to have that connection and so yeah, we'll be surprised by the coincidences that happened. Right. And a nice quote as well from that book I was reading, how to write. Very few people ever acquire jobs by sending around resumes. People get jobs by knowing someone, by sticking a foot in the door, by cornering someone, by and selling themselves, by hook or by crook. Publishing works the same way for the same reason. There are too many people chasing too few slots. So that's of course in the context of a writer, but it's kind of general principle. Right. Yeah. Networking can really speed up this whole process. Yeah. And just sending cv's around can be pretty inefficient also. Yep. And I know one thing I'll add is I know there are people listening to this that would, you know, if you were to classify yourself as any trait, you might say that you're an introvert. Right. It is necessary to communicate with people at some point in your career. So there is an essence, ill say, where you just have to kind of almost challenge yourself and reward yourself and say, look, im going to go do this for an hour and in return im going to spend 3 hours reading a book wrapped in a blanket with the heater on in the corner and not see another human soul. Right. So challenge yourself, reward yourself because it is something you need to do and it's super valuable. Yeah. Like it or not, we're all in the business of selling our skills to a certain extent. Right. So that marketing part has to be there. So do you want to list off all eight before we rant? Yeah, that's nice. Let me do that. One, communication is everything. Two, deliberate practice code every day and be resourceful. Adapt the growth mindset. Number three. Number four, be a generalist niche down later. Five, focus on the compound movements. Don't get distracted by shiny new objects. Six, know your business domain code does not live in a vacuum. Seven, share your work, teach others. And eight, do networking every single week. Nice. So I hope that helps. Yeah, I hope everyone finds that useful. That's our eight tips for how to make mode D. How to make the perfect meatloaf. What am I reading? Wrong thing. Anyway, so Bob, before we wrap it up, I'm going to ask you quickly. By the way, this was a lot of fun. I really enjoyed it. Yeah, this was nice. Just so everyone knows, as always, we have no script. We literally wrote the eight points down and then said, all right, let's just go. At most we have an outline, a structure. Yeah. Yeah, that was good. But I'm going to ask you quickly. I know this has been a bit of a longer episode because of the eight tips. What are you reading? What? Books? Yeah, I thought I pivoted a little bit. Putting you on the spot or surprise you. It's all unscripted, right? So I have the right to do so. So instead of my books, I was just going through the list and just making sure we have books for as much. So I mentioned range, but also for deliberate practice, I want to recommend peak growth mindset. I want to recommend mindset by Carol Dweck and not much else. Okay. But business domain, DDD, domain driven design comes to mind. I have not finished that yet, but that seems a good book overall to keep it software, your walking library. I tell you, he just knows his stuff. I don't. I don't know how he does it. But anyway, I just want to give some books in the context of what we spoke about. Do you have one on networking? On networking it's called. Just go and pick up the phone. No, I don't have a book on networking. You know, why don't we write a book on networking? Deal. Oh, crap. Can we edit this out? No, we cannot. That's accountability. What have I done? All right, there you go. So the book is the future. Pie bytes. Book on networking. Networking. The pibytes way. How about that? They get to be announced. Yeah. DVD. You had a specific book you wanted to show? No, no, nothing specific. I mean, we only recorded the last podcast a few days ago, so nothing's changed. Still reading that wizard of earth, sea book? Uh, three. Uh, what I did want to say, though, in this, in this moment, was, uh, I just wanted to say thank you to everyone who has given feedback to us in some way, shape or form on this podcast. Uh, that's also a win, in a way, but, uh, it's just in like, the past five days, I feel like things have exploded with feedback on this podcast. And we've had so many people make different comments and different forums to say they've appreciated listening to us, whether when you spoke with someone today, I think, Bob, where you said they were listening to us on a plane, you know, I know people listen to us while walking the dog, while driving to work every day. Some people listen to the podcast with their kids in the car. It's just. Yeah, that's why we don't swear. You beep. No, that's it. Too much editing. Okay, exactly. But it's. Honestly, it's such a pleasure. And it really means a lot when we hear that. Even AJ Kerrigan, who's a regular listener and a good friend of ours, even said that he appreciated the whole reading thing that I said. I felt burnt out from the textbooks. That was AJ, right? Yep. Yeah, just checking. Yeah, I want to call you. I wanted to call you out of that as well. The fiction part. Yeah. It's really so nice to read fiction, and it's another kind of. You can still learn a lot, but it's kind of a more passive way, and to be wrapped up in a story is just amazing. So, yeah, so we got to write our networking book as a fictional story. Products coming to life. Okay. All right. We appreciate you. Thanks for all that feedback. We have a lot of fun with this podcast, but we also deeply care about keeping it dense, providing a lot of content, always in the context of helping you as a python developer, always highlighting the mindset. Yeah. So. But it's also. Yeah, it's a lot of work, so getting that feedback is really nice. And also hearing how it's helping you or what we could do better or add to the mix that will all make it better. So keep that feedback coming. Highly appreciated. Nice. Yeah. Well, thank. Thank you again, everyone. And also, I know we have some new listeners. Bob just got a wonderful bonjour reply from someone who's just started listening. So thank you and welcome to all of our new listeners as well. But that's it. I'm done yapping. I'm ready for a drink of water. I finished my glass. Bob, how was your glass of water? It's still on the table. Yeah. Yeah. What do we talk about next week? Don't put me on the spot. I don't know. What are we talking about next week? I see how well some people see how well we are prepared. We'll see you next week. We'll see. We'll see. All right, beautiful. It's been a pleasure. Thanks again. Shout out to Paimaoudi for asking. That question has led to a really nice discussion, which I think will help a lot of people. Beautiful. Thanks, everyone. Take care. We'll see you next week. See you in the next one. Bye. We hope you enjoyed this episode. To hear more from us, go to Pybite friends, that is Pibit es friends, and receive a free gift just for being a friend of the show. And to join our thriving slack community of python programmers, go to Pibytes community, that's pibit es community. We hope to see you there and catch you in the next episode.