Advice for early-career software development professionals

Advice for early-career software development professionals

A few times a year, I’m asked to talk to our incoming class of typically freshly-graduated computer science and information systems majors who are beginning a one year program with AgileThought. I try to give them some advice that will last their career, and hopefully help them get it kicked off in the right direction. Everyone who comes through this program is going to have a career in the software development world, most likely as a developer, but sometimes not – so I try to keep this advice to fit everyone. I thought I’d share the major points that I cover with these new hires. Perhaps this will be useful to someone out there who is in the same stage of their career.

Be ready for a lifetime of learning

We get to work in the most exciting industry, and with that comes the responsibility of continuous learning. This doesn’t apply to just developers who must deal with the latest shiny new widgets or languages. There are advances in test automation, new techniques for facilitation and process management, plenty of new DevOps-related technology, new user experience methods and practices and patterns, and new ways of thinking about software product management. I’m sure this is a similar challenge in other industries – but in the software development industry we get to learn about new ways to create new things all the time! There is nothing more exciting than that!  

Understand most of software development is not writing new code

I talk to many young developers who are completely enamored with writing code. I get it – it’s fun to create, re-write, and create again. Solving a problem through writing code can give you a literal high. However, it’s important to realize that of your daily work to deliver a new software product, a good portion of it will not be typing code.  You’ll be talking with other developers and others on your team, designing on a whiteboard, talking to your customers about what the software should actually do***, deploying, testing, planning, and a whole lot more that isn’t hands-on-keyboard coding. But that’s OK – remember, your job is to deliver software, not just write code.   

Process is important

Because a large portion of our job is not directly writing code, we need to be extremely aware of what that work is, and work hard to optimize how we are working.  It is much more fun and rewarding to work with a team of people who are working well together because the way they are working is well-designed. If ever find yourself feeling like you are a cog in a machine – work comes in/work goes out and you sit still when there is no work in the queue – consider that something is fundamentally wrong with the process. Take a step back, map how you are getting work done, and fix it.  Use a process that is continually improving. It’ll make your life, and your product delivery, much better.      

Build your personal brand

There are opportunities today to start building your personal brand right from the very start of your career.  This doesn’t have to be publishing content – it can be anything from being involved in local community groups to contributing to an open source project to collaborating with others in an online community. There are a ton of different ways to be involved in your community to build your brand. This one is a long game – in 10 years if you are looking for a new job, having a well-developed personal brand will make you that much more valuable in the eyes of employers. 

Learn AI/ML

If there are developers in the room, and there usually are, I also recommend getting their hands dirty with anything artificial intelligence or machine learning-related. Yes, the technology will change and evolve here, but learning the fundamentals and putting some eggs in this basket will help better prepare you for the future of where software development is headed.

This certainly isn’t all you need to succeed in your career as a software development professional, but I hope it gets you started in the right direction.

***If you find yourself in a situation where are not doing this, I’d like to recommend this to you: http://agilemanifesto.org/


This is great advice. I wish someone years ago had given me similar advice in the field I was in.

Great write up! On the topic of being open to learning wanted to emphasize developers often get pigeon holed on to a platform (fe, be, mobile, etc) or a language often to find that the next best thing takes over and all of a sudden their skill set is obsolete.. along the same lines also important to keep yourself open to learning but at the same time picking the right tool for the job which I have often found to be outside of my skill set but easier to adopt because of a good base in computer science, logic and discrete math, and problem solving..

To view or add a comment, sign in

More articles by Ryan Dorrell

  • Book Review: Building Machine Learning Powered Applications

    Like many of you may have now, I have recently found myself with a bit of free time while waiting for the COVID-19…

    5 Comments
  • Books I Read :: v2019

    I love to read, and unfortunately, it’s one of those things that I frequently fail at making the right amount of time…

    4 Comments
  • Using Predictive Analytics to Improve Decision Making

    If you are in the tech industry, there’s no doubt you've heard about machine learning and predictive analytics. You’ve…

    2 Comments
  • AgileThought's Top 2018 Blog Posts

    With 2018 now in the books, I wanted to take a look back at the most popular content published by our AgileThinkers…

  • Laws of Software Development

    In speaking with people about the complexity of software development, one comparison I’ve often used to describe it is…

    9 Comments
  • Agile Reading List – 2017 Q3 Update

    Since 2011, I've published a software development-focused reading list. These are books, that in my opinion, should be…

    4 Comments
  • The future of context-adaptive devices?

    We are seeing growing trend in mobile platforms is to attempt to be relevant in the context in which you are using…

  • A Day in the Life of a Software Developer, 2031 Edition

    I thought I’d post something a little different, and take a fun look at what might the day in the life of a software…

    5 Comments
  • Where should Scrum Masters report?

    I have heard this question perhaps twenty times over the past several months. “What part of the organization should…

    5 Comments
  • The Software Project Model is Broken

    Yes, I went with a provocative headline to grab your attention. It must have worked because you are reading this.

    26 Comments

Others also viewed

Explore content categories