Career Mistakes to Avoid as a Developer
![Career Mistakes to Avoid as a Developer](https://talalzaman.com/wp-content/uploads/2023/11/Career-Mistakes-2.png)
[ad_1]
What does the word career
mean to you? To me, it is a roller coaster journey during which we find opportunities, progress, and growth in life. The journey involves learning objectives, work, and other personal and professional aspects.
A promising career is one where you enjoy most (if not all) of your daily work. You see your personal, professional, and financial growth and gradually define what success means to you.
A lousy career is just the opposite. It may pay your bills, but you need more work satisfaction, and measuring your progress and growth becomes hard.
Several factors define a career: promising versus lousy, good versus bad, and successful versus failed. A few of them we can not control – but, we can avoid some career mistakes to build a better career path.
I have spent more than 18 years in Software Engineering and have seen a lot of ups and downs, including in my own career and those of my colleagues. In this article, I will discuss ten career mistakes you should avoid.
Usually, I share knowledge on technical topics like JavaScript, web development, React, Node, Next.js, and so on. But this time, let’s connect on essential tips for our Career Development.
If you like to learn from video content as well, this article is also available as a video tutorial here: 🙂
A Few Things Before We Start
You may or may not agree with all the points. That’s fine with me, because what I’m planning to share here is based on my own experiences.
You may strongly agree or disagree with my conclusions, but if there are any additional points that you think I still need to include, please let me know. You can contact me on the social handles I mention at the end of this article.
Also, this article is not only meant for working professionals. All these mistakes we will discuss are relevant for everyone, including students, people seeking jobs, or anyone getting ready for tomorrow in the software industry or any industry.
All set? Let’s get started.
1. You Don’t Set Realistic Goals
![Goal](https://www.freecodecamp.org/news/content/images/2023/11/Goal.png)
One of the biggest mistakes most of us make in our careers is not having a goal. What exactly is a goal? It is something like a target.
Let’s take an example. Let’s say you’re going shopping to buy something. You usually have a list of items that you want to get. You don’t randomly pick things and come home and feel like, “Oh, it was a complete waste of time and money”. So, if that list is your shopping goal, why not have something like this for your career?
Usually, we have a lot of short-term goals, for example,
- I have to fix this bug today.
- I have to build this project this week.
- I have to get a promotion this year.
These are great goals to have. But we need to have long-term goals as well. Like, what do you want to be in the long-term in your career. How do you plan every steps to achieve that goal?
Say you are in mechanical engineering, but your heart is in software engineering (mechanical engineering is excellent – I’m just taking this as an example). In that case, you should have a goal for the next few years to translate yourself into a software developer and try to seek more roles more opportunities in the software industry.
I can tell you my story, as I think it’ll help give you some perspective. I set myself a long term career goal to transition from my regular multi-national corporation job and start my career full time as an independent teacher and content creator. It took me four years to realize it, but without that goal it would have been impossible for me to chase my passion.
You may ask, will I be able to fulfill all the goals in my life? Well, maybe not. Still, it’s important to have some and prioritize the most important ones. That way, even if you can’t achieve some, you may identify a few more new goals along the way.
You may have a different way of going about it. But, if you don’t have a starting point, you do not have anything to work toward and chase. Your career may become stagnant.
If you don’t have any career goals for yourself right now, take some time to come up with a couple realistic goals. Here’s some advice on how to set SMART goals you can actually achieve.
2. You Fail to Recognize Your Potential
![Potential](https://www.freecodecamp.org/news/content/images/2023/11/Potential.png)
Human potential is the capacity for humans to improve themselves through studying, training, and practice, to reach the limit of their ability to develop aptitudes and skills. – Definition of Human Potential from Wikipedia.
For us, the software developers, is about improving ourselves through practice, training, and study to reach the heights of our ability. But many of us do not know our potential at the start our careers. We figure it out gradually, and when we become aware of it, this helps us improve our careers.
When you know your potential, someone else will not dictate how to shape your career. Instead, you will be able to identify what would be good for you based on your strengths and where you need to bridge the gaps.
But you may ask, “How do I know my potential?”. That’s where having a goal and working towards it helps. Say you have a goal of mastering machine learning and data science to have a career as a data scientist. As you work towards this goal, you will find the areas where you excel, and other areas where you need to work especially hard. You figure out your potential as you work towards this goal.
Also, try not to settle for unimportant things. Constantly challenge yourself to produce better and more significant outcomes. When you do so, you discover your true potential in a much better way.
3. You Don’t Take the Time to Network
![Networking](https://www.freecodecamp.org/news/content/images/2023/11/Networking.png)
Hey, we’re gonna talk about something other than computer networking here. We will focus on human-to-human networking. We are going to talk about socializing. But why?
Networking or socializing with like-minded people, talking to them, and getting inspired by their work are as important as learning to code in programming. You might be a great programmer and fantastic coder. But suppose you do it in a silo. In that case, no one knows you or what you’re capable of, so you will most likely lose out on more significant opportunities in your career.
When you socialize and network with others in the tech space, you may find a meaningful community to join. You’ll be able to discuss important topics with like-minded people who have interests similar to yours – and this can help you multiply your growth by many times.
This is one mistake I made in my career for several years, as I was unaware of its vast potential. Be active on platforms like LinkedIn, follow people you’d like to connect with on tech Twitter (now X), and make authentic connections with them. Spending mindful time on these platforms, and at in-person events as you’re able, can really help boost your career.
Check out the You Miss Out on Learning Opportunities
section below for some real-life tips on how to reach out and connect with people.
4. You Waste Your Precious Time
![Wasting-Time](https://www.freecodecamp.org/news/content/images/2023/11/Wasting-Time.png)
“Wasting time” means not effectively utilizing your time. Would you agree that time is precious? Using and managing your time properly will help your career and life in general.
To clarify, watching a movie, going out with your friends and family, participating in festive activities, and so are not wasting time. You need these to balance out the time you spend working.
Rather, I’m more concerned about the tasks you may have to perform that take away from your “focus time” at work.
Let me walk you through a few situations:
You are working on a task, and here comes some notifications on your phone. You pause whatever you are doing and jump on your phone to see what’s happening on that side of the world. The notification may take you 10-15 seconds to read, but you then spend 10 minutes browsing the phone.
This is a habit many of us have built in recent times. And then when you get back to your work, your brain has to recalculate and bring you back to the topic at hand – where you were, and what you were doing – and get you started with the task gain. This context switching is costly, and the same amount of focus may not be possible.
The best way of tackle a situation like this is,
- Switch off the phone’s internet while you’re working if you do not need it. You can switch it on when you take breaks, maybe at lunch time.
- You can also set your phone in “Do Not Disturb” mode while your work needs your utmost attention. Just make sure you add some of your family and friend’s contacts as emergency contacts so that only a limited set of people can reach out to you during those times in case of any emergencies.
Let’s talk about another situation. Suppose you need to prepare and send a design doc to a senior dev for review. But instead, you spend time on something low priority or some little luxury that delayed preparing the doc. You keep postponing until it’s become an urgent thing that you’ll have to do within a limited time.
This act of delaying something knowingly is called procrastination
, an ultimate way to kill time. There are some well-known and proven methods to tackle procrastination.
- The first step is to realize and admit to yourself that you procrastinate.
- Then list out your distractors. This list may vary from person to person. Remove these distractors. It could be your phone, TV, novels, anything.
- Break down your deliverables into smaller tasks. Achieve them one by one and give yourself a pat on your back once you’ve finished each small task.
- Take small breaks and come back to the point where you left off on your task to continue with a fresh brain.
Instead of finding yourself in these types of situations, use your time wisely. If you have to get something done, get it done. When you’re procrastinating, something that depends on one task may also get delayed, creating a cycle of time waste, frustrations, and complicated situations.
5. You Neglect Upskilling
![Upskill](https://www.freecodecamp.org/news/content/images/2023/11/Upskill.png)
Upskilling
means getting better at your current skill or acquiring relevant new skills. It is essential to upskill at any and all stages of your career.
One of the common mistakes we make is that we stop upskilling after a few years in our professional life. We get used to the projects, domains, technologies, and environments that create a comfort zone around us. Upskilling is always about coming out of that comfort zone.
Here are a few common excuses we give to ourselves when it comes to upskilling:
- I already have a lot of work at the office or assignments in university.
- I need to have a personal life.
- I am happy with whatever I know now, and my work only demands so much.
- There is so much to learn and it is never ending (sigh!).
But you really don’t need that much time in a week to up-skill. You just need to have a plan and to stay consistent in executing it. Set just 1 hour aside in your day. Fork it out from any non-urgent activities and plan your learning schedule in that one hour.
In this one hour, here are some things you can do:
- Assess the gaps, weaknesses, and strengths in your technical and non technical abilities.
- List them out in a place where you can easily get back to them and make modifications.
- Prioritize them based on your current needs and near future goals.
- Time-box each of the items so that you can get something tangible within a specified duration. For example, you want to do a certification on cloud computing within a month, or the Responsive Web Design course from freeCodeCamp over the next few weeks, and so on.
- Start working on these defined tasks. You may find many resources on internet. Glance over them to create an index of resources that you can understand easily and relate to well.
- Read and watch tutorials, but also practice hard.
- Finally, recognize your progress.
You may ask, is that one hour really enough? And I will tell you – it works like magic if you keep it up. Upskilling is not a race or sprint. It needs time, consistency, and perseverance to get from the one end to other.
Have you heard about the power of tiny gains?
![image-21](https://www.freecodecamp.org/news/content/images/2023/11/image-21.png)
It is a strategy of being just 1% better every day. If you continue to do that for a year, you get almost 38% better at the end of the year. Being 1% worse does the opposite. The strategy was represented in mathematical graphs by James Clear in explanation of Continuous improvements and how it works.
Upskilling can also help you out a lot if you’re preparing for the job search. The way the tech industry is moving, we may not be able to avoid layoffs – but we can be better prepared to get our next job faster. And that becomes much more attainable when you stay relevant and continue learning new things.
6. You Don’t Ask for What You Want
![Don-t-ask-Don-t-Get](https://www.freecodecamp.org/news/content/images/2023/11/Don-t-ask-Don-t-Get.png)
Let me start by sharing an experience of mine. Back in the early 2000s when I was a fresher, I had to attend a meeting with some of the project leads and the manager. We were discussing how to modernize our product with HTML5 features.
I was aware of HTML5, and every time a discussion point was raised, I thought of adding to it, but I didn’t. I thought of asking some valuable questions, but I didn’t. I felt that in order to ask something in a meeting, I needed a lot of guts! I was wrong.
Oftentimes in your career journey, if you do not ask, you simply won’t get what you want or deserve. If someone has some knowledge and you lack it, ask about it. If you have a questiona bout something, ask before you commit to the work. Ask about your promotion, a salary hike, career growth, and anything that is related to your career. There is no such thing as a silly question when it comes to your career growth.
7. You Only Focus on the Money
![Money-honey](https://www.freecodecamp.org/news/content/images/2023/11/Money-honey.png)
Come on, money is important. But is it the only important thing, especially in the context of switching jobs or working towards your career goals? No, certainly not.
When you plan to switch jobs, you also need to look into other factors like work culture, the amount of time you need to spend at the office working, whether it’s going to be more stressful compared to the compensation you’ll be getting, and so on.
I would certainly look into the following factors along with the compensation (the money part) to make an informed decision about my job switching:
- What will be my technical growth and learning opportunities?
- What will the work environment be like? Remote/Work From Office/Hybrid? How will that impact me?
- What skills (both tech and soft) will I be able to learn in the new position?
- What kind of employee benefits will I get compared to my current organization?
- Will my work-life balance be impacted positively?
- What are the company’s vision, culture, and values?
Then when you’re considering the salary, be careful and make sure you understand the breakdown. What percentage of the CTC comes from any bonus? Is it inclusive or exclusive of CTC? How does the bonus payout happen? If the company doesn’t do well in a fiscal year, will you get paid less? Are there stock options or other benefits they pay out instead of cash? All this matters.
The mistake people often make is that they see only the money
figure as the most important part of a job offer. Make sure you talk to someone from the company, do your research, and learn about what else they’re offering as we mentioned above.
8. You Neglect Work-Life Balance
![Work-Life](https://www.freecodecamp.org/news/content/images/2023/11/Work-Life.png)
Another mistake you might make is not balancing your work and life. The last thing you want is to burn out
at the cost of things you love the most, like your friends, family, and long-term career.
We must learn to prioritize things, and this includes both work and personal life. Your priority list for the day should not have only work related items. While it’s important to ship a bug fix, it is also essential to accompany your kids to their soccer games or school plays, or make time to go on a date with your partner, or do something nice for yourself.
Do not be afraid to say “No”. At the same time, don’t be arrogant when you accept or decline tasks. This is important to keep a healthy work-life balance. When you already have plenty on your plate, trying to accommodate more or do more will only spill over and negatively affect your work-life balance.
So say no when you need to, communicate your intentions ahead of time when possible, and proactively ask for what tasks you’d like to work on when your plate has room for more.
For a long time in my career, I attended meetings late at night to match the timezones of my customers and other colleagues. Then, slowly, it started affecting my health and productivity.
When I thought about it more carefully, I discovered a couple of things. First, I realized that I didn’t have to attend all the meetings, and that I could request that they take place in my clients’ evenings sometimes. That way we’d both be taking turns compromising. And it worked.
At times, our habits drive us towards the work-life imbalance. For example, staying late at office while the same work can wait till the next morning is a classic example of a habit that may lead to health issues and frustrations in a long run.
We all need to find a way to sustain both work and life. So plan ahead, and stick to your schedule as much as possible. There might be exceptions where you have to give one thing priority above another – but do not allow the exception to become the norm.
9. You Miss Out on Learning Opportunities
![GOAT](https://www.freecodecamp.org/news/content/images/2023/11/GOAT.png)
If you have the opportunity to learn from a person who specializes in a particular field, grab it. If you use social media platforms like LinkedIn and X/Twitter wisely, it can lead you to the people who share great insights about subjects you’re interested in.
A quick tip for you:
When you send someone a connection request on LinkedIn/X, take some time to introduce yourself. Things that you can mention briefly:
- What did you find unique about the person you want to connect to?
- A bit about yourself, introducing some of your uniqueness, too.
- Why do you want to connect?
Build authentic connections to get the best out of it. Then once you’re connected, here are a few things you can do:
- Show interest in their posts.
- Engage with discussions by commenting or sharing posts.
- Repost with your thoughts
- Exchange ideas, or even build things together!
A strong social connection may help you in getting information faster. You may learn about a new release of a library/framework/product, how an industry is moving, how certain technologies might impact your work, and so on.
Apart from learning a lot, you may also get to know about job openings, hirings, and references. After all, companies have also started recruiting talent from social media pages.
Also, being part of a forum like the freeCodeCamp forum can be helpful for networking and learning as well. It is also a place for you to share solutions to a problem, talk about what you’ve learned, and make yourself visible gradually.
When we learn from someone, we not only come to understand what they’ve achieved or how they did it, but we also learn about the struggles, failures, and how they made the turnaround. Learning from someone else’s experience can help accelerate your career journey. Don’t make the mistake of living in a silo and missing out on these opportunities.
10. You Can’t See the Bigger Picture
![Big-Picture](https://www.freecodecamp.org/news/content/images/2023/11/Big-Picture.png)
By Big Picture
(or Bigger Picture), I mean understanding and developing a wider perspective on your career as a whole. It is about your ability to consider and assess many different aspects of a situation, rather than focusing on just the minute details.
As developers, we’re supposed to implement features, do bug fixes, maintain code, and deliver quality software to our end-users. That’s great!
But, we need to think beyond the individual tasks assigned to us. Our understanding of the overall project goals, the user acceptance criteria, delivery mechanisms, and perspectives of other engineers is key. And so is judging the impact of our work, as it will help us get the big picture of a project.
Suppose your product manager wants your team to build user interfaces that also cater to the needs of specially-abled and visually challenged users. In this case, you and your team members must see the bigger picture around Accessibility
.
If your designer doesn’t define the site’s colors accordingly, or the developers do not implement keyboard accessibility along with ARIA roles and attributes, then they’re missing the bigger picture.
Another example could be over-optimizing performance while your users do not care about it. Your users may be waiting to get a feature ASAP so it can help them achieve their business goals. But by addressing unnecessary optimizations, you may be delaying that release and missing crucial deadlines.
Missing the bigger picture may lead to a lack of synergy in your organization. It can also result in software products that need multiple iterations to meet customer needs because those needs weren’t understood at the beginning. This can cause you to miss deadlines and do more work, and can greatly increase the cost to your client.
Along with understanding “what” tasks you need to perform, also ask “why” your tasks are important and how they will impact the rest of the project or other people’s work.
Irrespective of what you build, how big or small it is, how glorified or dull is the outcome, you need to know the impact of it on end users and your internal customers (like product/project managers, quality assurance team, documentation team, whoever).
Once you look at the bigger picture and act accordingly, your margin of error reduces automatically.
Some More Advice and Wrapping Up
I wanted to share all this career advice with you because I have been on the other side and learned the hard way. Before I move on to write my next article or record my next video, one more quick tip for you: make sure you work to build up your finances.
Financial independence brings peace and the mental stability to think wildly about things you want to pursue in your career. But getting to the point of financial stability is not an overnight thing. You need to plan, save, and invest wisely such that your money grows faster than your age.
I am not a finance expert, but I relied on some good ones and took their suggestions early on. If you have the opportunity and mindset to build your finances for the future, the time is now.
That’s all for now. I hope you found this article informative and insightful. I regularly publish meaningful posts on my GreenRoots Blog, you may find them helpful, too.
Let’s connect.
- I am an educator on my YouTube channel,
tapaScript
. Please SUBSCRIBE to the channel if you want to learn JavaScript, ReactJS, Next.js, Node.js, Git, and all about Web Development in the fundamental way. - Follow me on X (Twitter) or LinkedIn if you don’t want to miss the daily dose of Web Development and Programming Tips.
- Find all my public speaking talks here.
- Check out and follow my Open Source work on GitHub.
See you soon with my next article. Until then, please take care of yourself, and stay happy.
[ad_2]
Source link