What is software development really about at the highest level? Is it all tech or do other skills matter too? Senior devs don’t get where they are without some serious technical know-how. So you can expect them to have expertise in several programming languages and be committed to CI/CD and rigorous testing. They likely know all about automation and where to use it and have a finger on the pulse of emerging technologies. But that’s not all.
If you’re looking for career tips to be a successful senior developer, soft skills are also vital. So in this article, we’re going to look at some insights from Klarna, one of today’s most successful fintech companies. Senior devs at Klarna need to combine cutting-edge tech expertise with a range of soft skills to maintain the company’s market competitiveness. So it’s a great place to discover some career tips!
Senior dev: beyond hard skills
Software development doesn’t happen in a vacuum – developers have to work with other developers, managers, sales and marketing staff, and many others. They need to know how to explain and share ideas, how to learn from others and how to compromise where necessary. They need to manage projects with multiple stakeholders and time constraints and be able to see the wider context of their technical work.
Companies like Klarna now look for soft skills as well as technical expertise in their senior devs. So it’s worth looking at how coordination, team management and negotiation feed into developers’ career tips. We’ll also consider how an understanding of different cultures and global teams can benefit effective development.
Asynchronous Communication: how and why
As a techie, if you hear the term ‘asynchronous communication’, you’ll probably start thinking about data transmission or programming frameworks. But the concept works for humans as well. Asynchronous just means communication that happens intermittently rather than in a steady stream. So for human conversation, that means a lag between responses, rather than ‘live’ or ‘real-time’ chat.
Synchronous vs Asynchronous communication
Synchronous communication means real-time discussion, whether at the desk, across a meeting table, over the phone or increasingly via video conferencing systems. It is direct and can be productive for brainstorming or personal conversations. But in offices, it can also cause interruptions to workflows.
Asynchronous communication has become more common with remote working. Rather than regular discussions over office desks, team members tend to work on projects in their own time, communicating via email, messaging software and even asynchronous video.
There are usually fewer distractions with async communications. There’s less chance of being interrupted when ‘in the zone’ – any developer knows how frustrating that can be! Because you don’t need to respond in real-time, you have more opportunities to think about the content and form of your communication, which can be good for technical discussions. And async allows you to keep a record of communications more easily for future reference. However, it’s important to choose the right tools to make the best of asynchronous communication and to use them in the best way.
Async Communication Tools
Email is probably the most basic messaging tool. But collaboration software like Slack can offer several improvements. Its messaging service allows you to create channels and topics for better organisation, which can all be easily tied to project management.
For more complex needs, Tools like Loom and Soapbox integrate screen recording and video messages, so you can share processes and plans visually. You can also integrate messaging with document sharing for more progressive collaborative communication using platforms like Google Docs. Plus, as a developer, you’ll no doubt be well-versed in Github collaboration and this too can serve as a great async communication tool.
Async Communication best practices
It’s also important to use asynchronous communication in the right way. As well as technical career tips, it’s worth thinking about using your communication tools properly if you want to get ahead as a senior developer. Firstly, don’t completely discard synchronous communication. It’s still useful to get some face-to-face contact at times, whether for brainstorming or just social reasons. Plus, if you have to have difficult conversations or make important decisions as a team, in-person can often be more sensitive -and clearer- than email.
Be sure to use the right tool for the context. Brief messages are probably best handled by email or Slack channels. But if you need to give a more detailed presentation, consider document-sharing apps, screen-sharing or video recording. And if the situation demands you to assert your role more personally, again, a video presentation can be more effective.
Finally, remember that while async communication can be less intrusive, it can also be burdensome. Overloaded inboxes or stacks of messages can pile up and there’s always the risk that something important could be lost. So be sure to prioritise your messaging, use organised channels, and don’t spam!
Boosting your Jira skills
Project management is something you’ll need to think seriously about as a senior developer. There is a wealth of tools out there to help you manage tasks, bugs and team activities. One great example is Jira, used by Klarna as well as many other high-profile organisations and businesses.
Jira is a cross-platform issue tracking platform, widely used as a project management tool. For senior developers, Jira can be your magic wand, so here are five tips to help you get the most out of it:
- Use the dashboard. Senior devs often have many projects on the go at once. You can configure Jira’s dashboard to give overviews of project status, sprint progress, stats and more, giving you all the summary information you need.
- Take advantage of roadmaps. Jira Roadmaps is a super useful feature for sharing activities, next steps, and future strategies with management. They help everyone (especially the team) never lose sight of the big picture!
- Organise with labels. Adding labels is a minor extra step in updating your tasks, but it’s time well spent. Especially with colour-coding, they can really help you to stay organised.
- Keep it simple and tidy. Configure your task forms so that you don’t log unnecessary information. And keep track of your backlog – delete old tasks that are never going to be done.
- Use bulk actions and automation. Bulk actions save time when updating things like task statuses. Better yet, you can often set up automation to handle these jobs directly, cutting out routine work.
- Leverage insights. Jira’s ‘insights’ functionality is one of a number of new tools recently introduced to help track your sprints. Use them to get a better idea of workflow and capacity.
Negotiation and better meetings
With remote working becoming more common, effective meetings are more important than ever for development teams, whether online or in-person. As a senior developer, you’ll need to take a lead role in these meetings. So it’s worth brushing up on your interpersonal skills to get the most out of them.
However well you define tasks, the human element can still complicate matters, so effective communication is essential. In meetings, be sure to check how each developer in your team is doing, whether they’re on track and if they have any problems. Be prepared to listen and hear different opinions. And if there are disagreements, ensure that concerns are addressed rather than letting frustrations stew.
Ensure that you have enough meetings to keep on top of your projects, but not too many. Time is precious and developers won’t appreciate interruptions to their coding if they think it isn’t justified. Make sure each meeting has a clear agenda and a pre-read document with key points so that everyone’s updated for the meeting. Don’t get side-tracked and stick to time, in that way you’ll help to maintain motivation and satisfaction.
Understanding (and loving) cultures
Companies like Klarna have global reach and widely-distributed development teams. That means people from many different cultures contribute to the company’s products and services. In this context, it’s only normal to find different consumer marketplace expectations and approaches to work. Sensitivity to these differences can be a real benefit for those working in more senior roles, even where the productive work itself is ostensibly technical. So, for mid-level devs looking for career tips for their soft skills, cultural awareness ranks pretty high on the list.
Individuals are typically shaped by the intersection of several different cultural conditions. While coders tend to have a culture all their own, global diversity also means they have ties to family and society that may be highly variable within teams. Senior developers working with intercultural teams, therefore, need to take the time to learn about different life patterns across the world.
This kind of learning is not just formal. Being curious and interested can go a long way to making a positive impact with your colleagues and help to foster mutual respect. As a senior dev, you may also need to interact with managers, software suppliers and even clients internationally. In such cases, it’s vital to understand different types of communication styles and negotiating practices. But best of all, working in this way can broaden your horizons, offering a true complement to your technical interests.
Remote working is now prevalent, teams are more global and software is more deeply embedded in everyday life. That means tech cannot simply develop in a vacuum. Senior developers need a combination of hard and soft skills, enabling them to traverse human networks as well as digital systems. If you’re looking for career tips to progress as a developer, paying attention to this wider field of skills is now more vital than ever.