Master These Strategies to Advance Your Software Engineering Career
Written on
To excel in the field of software engineering, it's crucial to manage your time effectively and focus on meaningful work.
Consider this hypothetical dialogue:
Coworker: Can we schedule a quick 30-minute chat? Me: Quick? 30 minutes? Coworker: How about another bi-weekly check-in? Me: How about, no. Coworker: Do you need an hour or two blocked off for coding? Me: Seriously? No, I need much more than that. Product Owner (on Friday): I informed leadership we can deploy by Monday, is that feasible for you? Me: No, I have a life.
Corporate environments can hinder productivity rather than enhance it. It's vital to safeguard our time from unnecessary distractions, as many factors in today's workplace are beyond our control, but managing how we allocate our time is not.
You are in command of your work schedule, contrary to popular belief. Here are five common pitfalls that can undermine productivity for engineers:
1. Working Overtime
If you've read my previous writings on software engineering improvement, you know I strongly oppose the overtime culture. After experiencing burnout multiple times throughout my 20+ year career, I can assure you it’s not an enjoyable experience.
Currently, I work at a New York-based company where, during the pandemic, my colleagues began working the hours they used to commute. This inadvertently placed pressure on me to do the same.
I fell into this trap, especially since I work for a cancer hospital, making it challenging to decline when patient lives are at stake. Yet, I quickly felt the onset of burnout, leading me to require an extended break to regain my momentum.
Working extra hours is not the solution to increasing productivity. While there are times when additional hours are necessary for critical tasks, those hours should always be compensated with time off.
The overtime culture rewards those who work excessively, which can create a detrimental expectation for the entire team. As an Engineering Manager, I value those who are efficient during standard hours rather than those who merely extend their working time.
Instead of putting in longer hours, focus on working smarter. I’ve detailed a system to increase productivity in another article.
2. Excessive Meetings
Let’s not even get started on meetings; the culture surrounding them is overwhelming. It's essential to take control of your calendar since many prioritize discussions over actions, and only you can put a stop to it.
Engineers require substantial uninterrupted time to focus on their tasks. In the past, I had a boss who encouraged me to assertively excuse myself from unproductive meetings, which proved liberating.
While I've tried to minimize meeting culture at my organization, it's been a challenging battle. However, I can control my own schedule.
Here’s how: - Reserve 4-5 hours each afternoon specifically for coding and project work. - Consolidate all meetings into a specific time slot that works for you. - Decline meetings where your contribution isn't essential and request a recording instead. - Politely refuse any meetings that can be addressed through messages or emails.
3. Neglecting Learning Time
If product teams had their way, development teams would focus solely on deploying new features. However, we are not machines; we are human.
In this rapidly advancing AI landscape, it's critical for software engineers to stay updated with technology. This learning should be considered part of our job.
Take the following steps: - Advocate for dedicated learning time in your next team meeting. - Schedule learning sessions on your calendar. - Keep a list of resources for tech updates and review them daily. - Choose topics of interest that can be applied to your work for deeper exploration.
4. Constantly Checking Email
The relentless ping of incoming emails can be distracting. Even if you don’t check them immediately, the noise can disrupt your focus.
While you can’t control how many emails you receive, you can manage your response strategy.
Recommended actions: - Only check emails after you've established a productive flow in your workday. - Set specific times for checking emails and respond accordingly. - Develop a systematic approach for managing your inbox.
5. Managing Push Notifications
Instead of allowing push notifications from every messaging app to disrupt your workflow, designate specific times to check these notifications.
For most engineering teams, checking in hourly is sufficient to ensure timely responses without sacrificing focus.
Here’s what to do: - Disable push notifications during work hours. - Check in with colleagues once an hour for important communications. - Increase your productivity significantly!
Conclusion
To reiterate:
Engineers require substantial uninterrupted time to contemplate problems, design solutions, and code effectively. You must take charge of your workday to stand out as a software engineer and gain recognition from peers and supervisors.
Ultimately, you are the only one who can control your schedule. If you allow others to dictate your day, you’ll continually be reacting to their needs instead of focusing on your own priorities.
For further insights on clean coding, developer productivity, and how to excel as a software engineer, check out my profile and subscribe!
Join the Medium membership program for only $5 to gain unlimited access to my articles and support my writing at no extra cost to you.
Join Medium Today! ~ Julie Perilla Garcia
As a Medium member, your subscription supports writers like me while you enjoy full access to all articles on the platform.