Episode 41 – 5 Steps To Success As a Software Developer

Do you dream of making it big in software development?

Have you ever wondered how you would go from where you are in your software development journey to becoming a truly successful developer?

Do you find yourself scratching your head trying to figure out how to break into the next higher sphere and make considerably more money without sacrificing family time?

Does it seem that everyone else seems to have this “development” thing figured out but you have been left in the lurch?

If this is you, read on…

Episode Highlights and Show Notes:

Arsalan: Hi everyone. Welcome to episode 41 of the Mentoring Developers podcast. I’m really thrilled to have you as a listener and a supporter, and someone who believes in our mission, which is to promote diversity and to help new people become developers and to succeed. We also want to help them develop this culture of empathy. It’s a thing that’s very important and I’m glad that you’re on this journey with us.

Arsalan: Today I want to talk to you about something that I haven’t really talked to you about much in the past. It’s something that I’ve been thinking about, and I know that a lot of you have been thinking about, and that is what does it really take to succeed as a software engineer or a software developer? There are some people who succeed and some people who struggle but eventually we all get our bearings. Yet, there should be a way to structure your career and structure your life so that it sets you up for success. Or, it increases your chance for success.

Arsalan: I’ve had many years of experience and I’ve talked to many people through this podcast and outside of this podcast. So, I’ve come up with this idea of the five steps for success as a software developer. I wanted to tell you a little bit about that in this episode. Before I do that I wanted to remind you that you can go online at scientdev.wpengine.com/episode41 where you can find a transcript of this episode. You can also go to mentoring developers.com/list, to sign up for my mailing list where you can get these five steps and a whole lot more in an email sequence that you will receive every 3 to 4 days. Hopefully, you will learn and benefit from my ideas and some of the ideas from the top people in our industry on how to succeed as a developer.

Arsalan: So let’s get started. Ask yourself this: do you dream of making it big in software development? You started your journey. You are a developer or you are thinking about becoming a developer. You feel like you can do it. You’re getting the hang of it, but you haven’t succeeded in the way that others have succeeded. If this is something that you dream about, then keep listening. If not, then go back and think about what it is that you really want in life. Think about whether this is the right career for you. I will support you either way.

Arsalan: Do you find yourself wondering how you would go in this stage of your software development journey to becoming a truly successful developer? Do you find yourself scratching your head trying to figure out how to break into your next higher sphere? Perhaps, you are wondering how to become a manager or a senior, or how to be taken seriously in architectural decisions? Have you wondered how to become an architect or how to start your own company? What about becoming independent? Or maybe you want to be part of a startup? Or perhaps you would rather become a CTO or a CEO? You have dreams and it’s good to have dreams.

Arsalan: So here’s a reality. Lots of new and aspiring developers struggle with managing their career. Money is tight when you are a junior developer or an intern. Money being tight is a fact of life. Coupled with that, you usually don’t have a lot of time to learn a bunch of new technologies. There are so many new div technologies coming out in software development. How can you be expected to learn all of them? It’s hard to know what to learn and what to skip. This is true for software developers who have been in the industry for a long time, and for software developers who are just starting out, or people who are aspiring to be developers. All of us have these struggles and it’s hard to figure out how to navigate this space and come out ahead.

Arsalan: Wouldn’t it be great if you could figure out a way to make your way towards a rewarding and fulfilling career? I’m talking about a career that affords you to have a great lifestyle without requiring unreasonable sacrifices from you or your family. The problem is that most software development is not rocket science unless you are working for NASA. While it’s true that some people are more naturally inclined to programming than others, most of us can learn how to program computers just as most of us can learn how to do simple algebra or math on our own.

Arsalan: We don’t necessarily need really deep knowledge. We don’t need to understand how everything works and how registers and processors work. It’s not important for us to know when we are trying to build websites or when we’re trying to build mobile apps.

Arsalan: The problem is that we get caught in this web of information by web, what I mean is this massive amount of information, not the World Wide Web. We get caught up in that and we can’t seem to get away. What we need to do is identify the best way to chart a course. You’re going to skip some things and focus on other things. What you focus on will become your specialty. It is a fact of being a developer in the modern world of 2016 and beyond that you will not learn everything. Perhaps 50 years ago, you could’ve learned a lot of different technologies in software development, but not anymore. So don’t try to be a jack of all trades. Instead, try to learn a few things really well. You will eventually learn a bunch of different technologies. You’re not going to learn just one thing because a complete software system depends on knowledge in different technologies and you will interact with other people who are perhaps better in those things. Yet, you should know how to work with databases, websites, and mobile applications. Within each of these spheres, there are different sets of technologies and that comes with them, like frameworks and other languages, and etc.

Arsalan: wow. You can’t learn everything, you can learn what you need to know in order to perform certain functions or tasks. For example, if you wanted to build a website using PHP, assuming that’s your programming language of choice, then what’s the best way to get your website to the final state? That would include, for instance, the code that creates the interface. There, you have some choices including frameworks. From there, you have to decide whether or not you want to use the framework. From there, you might have a layer of services and you will have to think about what kind of services they are and how they will provide your application with some useful information. Or, maybe you want to choose third-party services. Perhaps you want to integrate with Facebook or twitter. Perhaps you have an integration service that you want to use or perhaps you want to create your own service. Or, perhaps the service is your product and you want to create the service so that other people can use the service. There are so many different choices available for you to build your software career.

Arsalan: Focus on one thing, but try to learn a bunch of different technologies that help you to complete the picture and build a complete application. That way, you learned a little bit about everything but you only focus on one thing. Once you have proven yourself to be really good at one thing, you will find that it will be easier for you to get jobs. It will be easier for you to get promoted. It will be easier for you to make more money. And it will be easier for you to feel good about yourself because you will be considered an expert and you will be sought out for your opinions. Navigating all of that is hard enough, but what’s harder is figuring out how to manage your career.

Arsalan: you need to understand what you need to learn and what you need to skip. Without access to this knowledge and these insights, you might be inclined to drop out and quit. Quitting is not a real option. Quitting is fine if this is not something that you want to do anymore, but don’t quit out of frustration. Don’t quit if you don’t see a way out. Even though you really want to do this, but you don’t know how. There’s plenty of help and were all here to help you and support you. If you need any help from me, personally, feel free to email me at us@mentoringdevelopers.com or you can tweet at me @mentoringdevs. I love to help people, but I also know a lot of other people who love to help and I can also introduce you to people who could help you if you need help in a specific way. The important thing to learn and understand is to not give up. Keep trying.

Arsalan: sometimes you might need to take a break, especially if you’re stuck somewhere. If you can’t figure out the answers to your problems, then take a step back and come back to it later. A lot of times changing your focus and the intensity will give you the answers you need. Sometimes when I describe a problem to a colleague or somebody else if I’m asking help to that person, just the process of describing the problem reveals the solution to me. It’s amazing. So, pretend that there’s someone that you’re talking to and described the problem to the wall and a lot of times the answer may come to you. So don’t give up. If you’re stuck, go on forums, Stack Overflow, or Google and get in touch with the mentor. If you don’t have a mentor, I’d be happy to help you.

Arsalan: So what are my five steps to success? I think the best way for you to learn in depth is to go to mentoring developers.com/list and sign up for the email list. It’s free. I’m not going to send you a bunch of irrelevant information or share your email address with anybody. I just want to help and you can go and sign up to get an email sequence and you will start getting emails right away. If you don’t or if you have any issues, then let me know. Right now I’m going to give you a summary so that you have a taste of what you’re going to learn.

Arsalan: I think the emails themselves in this email course are really nice. They’re really detailed with stories and content that will help you visualize the issue and the solution. The first step is that you have to believe that it is all possible. “Belief” is easy to say but hard to actually do. But I want you to believe that it is possible. Have a dream and then I want you to achieve it. Why do you think you can do it? You can do it because others have done it, and there’s nothing so special about them.

They are people just like you. It has been done before and it can be done again.

Arsalan: second, need to have some structure and how you plan your day whether you’re looking for work or are working in an office. There are specific activities that you can perform during the day that will give you the tools that you need very soon. As soon as you become a developer, you will need these tools. By tools, I don’t mean software tools. I mean these methods and procedures. If you structure your day in that way, it will set you up for success during your performance reviews and when you are looking for new jobs. When you are looking back at your careers, you are presenting yourself to somebody. This will give you the tools that you can use to impress people and impress yourself. I think this is very important.

Arsalan: One more thing that you need to do is to make a lifelong commitment to never give up on yourself. You have it in you to succeed. All you need is for someone to guide you through your journey. Come to think of it, this is the real purpose of this podcast. I want to help you believe in yourself and I want to create a culture where everyone is helping each other and we all support each other. The key here is to have empathy. I want to empathize with your situation. Once you have someone who empathizes with your situation, my hope is that you will empathize with the next person who is coming into our field and we will slowly but surely change our culture and become one that is more welcoming.

Arsalan: The fourth step is getting into the habit of saving small amounts of money every month. You might wonder what saving money has to do with software development. I think it’s really important, especially when you’re first starting out because money and finances are your biggest problems. Money is often tight, especially when you are young and struggling to succeed, or struggling in your life. Money is tight and I know it. So, I want you to start saving money.

Arsalan: You don’t have to save a lot of money. Save just a little bit of money every month or every paycheck. Set aside some money and forget about it. Put it in a checking account or savings account, but it needs to be accessible to you for when you need it. Over time, say in a year or two, that can become a sizable amount. If it’s in a 401(k) or a retirement account, that’s fine but it’s not readily accessible for feeling good about your financial situation.

Arsalan: Finally, eat well, sleep well, and take care of your health. You could get more details and more in-depth analysis and insights. If you go to scientdev.wpengine.com/list and sign up for the mailing list and you’ll get that five email course right away. I’ll be looking out for that and I’ll be ready to help you in any way that I can.

Arsalan: So, that was episode 41, a very short episode. Today, we didn’t have a guest or a panel discussion, because I wanted to talk to you about the five steps to success that I’ve come up with based on my own experience and based on some of the discussions that I’ve had with people over the years. I think they will really help you succeed.

Arsalan: I would love to get your feedback on this. Email me at us@mentoringdevelopers.com or you can tweet at me @mentoringdevs. I would also be interested in seeing if you could give me iTunes reviews on scientdev.wpengine.com/iTunes. Give me a star rating and tell me what you think. Do you love it? Question mark do you hate it? What do you think of these five steps?

Arsalan: Sign up@mentoringdevelopers.com/list and I will be waiting for your emails. I will reply to your emails. If you sign up you will receive emails for me every 3 to 4 days about the five steps to success, and later on, some other very interesting material that I’m working on. You will never be spammed and your email will be kept confidential. The purpose of this is to help you.

Arsalan: Once you receive those emails, you can reply to me anytime and your replies will come directly to me and I will answer them. I would love to get those. I would also love to have you as part of the show if that’s what you’re interested in. If you want to be part of the show go to mentoring developers.com/join and let us know how we can showcase your talents and how we can feature you as a guest on Mentoring Developers.

Arsalan: All right guys and girls, it was a pleasure having you on the show and I will see you next time.

Important Links

Thanks for Listening!

Do you have some feedback or some advice for us or our audience? Please give us a review on iTunes, Spotify, Google Podcasts, or Stitcher and share your thoughts.

If you found this episode useful, please go ahead and share it with your friends and family. You can also listen directly and give your feedback on the website.

You can subscribe to Mentoring Developers via iTunes, Stitcher Radio, Spotify, or Google Podcasts

Join the discussion

Further reading

Episode 96

Stan’s Bio: “Stan boasts extensive experience with Agile/Scrum since 2006, taking on roles like Agile Coach, Solution Architect, and Scrum...

Episode 95

Episode 95

[sha  Guy Royse is a software developer with more than 25 years of programming experience and has been a part of a government program to teach...

Episode 94

INTRO  “Richard Campbell spanned the computing industry both on the hardware and software sides, development, and operations. He was a co-founder of...

Episode 93

“Shady Selim is the first Android Software Advocate in the Middle East. He is a Leading Mobile Developer of Android. He is a Google Speaker and...

Episode 92

Guy Royse is a software developer with more than 25 years of programming experience and has been a part of a government program to teach computer...