Page contents

How to be a Great Software Engineering Manager?

Share on facebook
Share on twitter
Share on linkedin

Run-through

10 Benefits of APM Software

10 Benefits of APM Software

What is application performance monitoring software (APM software)? How can they help you? What are the benefits and which are the best ones on the market?

Read More »

By GITENTIAL TEAM

Being a great software engineering manager is a continuous balancing act. Balancing between the interest of team members, the team, the company and clients, as well as your own. It requires both technical and social skills and no one says that’s easy.

I this article we broke down engineering managers’ tasks into bite-sized chunks. Keeping the focus on a well structured task map is easier and also a big step ahead. Read further and let’s improve together.

Start with the software engineering manager job description

Companies come in different shapes and sizes influencing job descriptions and org charts. Eric Elliot covers how software developer, engineer and executive roles should work together. Your responsibilities are likely to be inversely proportional to the size of your team. Smaller companies mean more responsibilities; larger ones lend to narrower responsibilities.

Being a great engineering manager starts with the responsibilities in your job description. Many companies might qualify the role by seniority (senior, principal, etc.). Some add specialties (analytics, data pipeline, backend, Android, etc.). Even so, the core roles and responsibilities are likely to be very similar:

  • Get to know your team members and take the lead by setting the example, provide guidance, and be available.
  • Support your team by securing resources and clearing obstacles.
  • Manage your team: on-site or remote, including outsourcing providers and freelancers.
How to be a great Software Engineering Manager?
  • Make use of data to drive decisions in improving team efficiency. Approaches include skill development, organizational standards, processes, automation, and tools.
  • Know your technical “fundamentals” well enough to guide your team members. Help them make decisions consistent with project requirements and goals.
  • Be the vital link (not the “missing link”). Know your HR role.

Supporting your team, the whole team.

By accepting a management role, you have to start thinking about what’s best for your team. It goes without mention to be loyal and honest with your direct team members.

Most of the engineering manager advices include the interaction with your direct team members. Make sure they get what they need to perform their job. Let them make engineering decisions, not micromanaging them, etc.

But, it’s vital to recognize the rest of the company is part of your team, too! Without the company, there is no team. Although, the rest of the company is not your responsibility. Yet, a great software engineering manager holds the keys to the company’s greatness. The developers and engineers reporting to you make or break your company’s product. Bad products don’t sell very well. If they aren’t going to sell, it’s not worth marketing them. That wave hits every other aspect of a business.

By the same count, you, your developers and engineers, have technical knowledge that could be useful to other departments. You can offer software suggestions to help automate processes or breakdown silos across the entire company. Help marketing with technical descriptions to improve marketability. We’re not talking about a lot of effort here, nope – not even a 1% effort, but we’ll come back to this.

With tact and diplomacy, you can help educate the less technically-oriented executives. Why? To have a mutually helpful decision-making processes. To help moderate customer expectations. This is sometimes called the Scotty Factor. Underpromise and overdeliver… not necessarily by a factor of four.

The Scotty Factor is there because, as a wise man once said, “Sometimes, something happens.” He was being polite about changes in priorities and SHTF events. CEO and customers have to respond to changes in the market and competitors. They may come to you with impossible, urgent requests. In such times, great software engineering managers need to be great leaders. You’ll need to rally your teammates and get it done…even if it means overtime. Companies and jobs may depend on you.

Improve efficiency by introducing automation and new tools

Today’s automation aims at replacing frequent, repetitive work. A core part of the engineering manager’s job is identifying where improvements can be made via automation, in work processes and tools. This isn’t an issue of guesswork. Because something looks like it will be easier or faster doesn’t mean it will be. It’s necessary to use data to drive your decisions.

Automated software development analytics. Get objective insight into what your team members are doing. Track:

  • code churn,
  • coding hours,
  • efficiency, and
  • team member interactions.

This can help you identify where bad code is being introduced, where silos are forming, and focus on paying off your technical debt.

Automated testing and APM Software. On both sides, you’re saving time and gathering data. Use it to identify bug to feature ratios, issues impacting software responsiveness, to prioritize code reviews, and more.

Project Management Software. Not everyone’s using Slack, Jira, or the other project management software available. Some are still using MS Word and Excel! Such primitive tools can be expensive! But, just because everyone else is using Slack and Jira doesn’t mean you should, too. The dynamics of a free market means having options. Proofhub shares the benefits and Steve Pogue did the math, to convince you to modernize.

A great software engineering manager will “Do the Due” Diligence before committing to any change. Be open to suggestions of third-party solutions offered by team members. Feel free to delegate reviews to see if a solution is fit for purpose. Test and compare against your existing benchmarks to determine the advantage. Weigh that against the cost to implement.

Be a catalyst for personal development and career growth

Improving team efficiency is a core task of the engineering manager. A great manager addresses today’s challenges while also preparing for tomorrow’s. The software development analytics, automatic testing and application performance metrics can be used to increase the effectiveness of code reviews. Use them to focus code reviews on the most problematic features. Coupled with knowing the strengths and weaknesses of your team members, you can identify which types of code reviews are needed and who should sit in on them.

Continuing Education Programs. According to LinkedIn, a staggering 94% of employees would stay longer at a company if it invested in their career. At the same time, the number one reason employees don’t continue their education is a lack of time. Keep your team members informed of programs and incentives your company offers. Be open to providing time for employees to take classes. Maybe offer flex time or telecommute options when practical.

A great engineering manager will go the extra mile, or three. You don’t need to rely solely upon your employer for continuing education programs. You might have the resources to create your own! You can get some free help through the Open Education Consortium (OEC) or for a small fee through EdX. Federal, state and local governments may have assistance available. Local colleges, universities and trade schools, may offer a variety of programs, too. Many tech companies also offer free technical training or sponsor online and local clubs, as well.

The “Vital Link” connecting employees to the company

In most large companies, managers also collaborate with the Human Resources (HR) team. Creating a harmonious work environment and facilitating career growth opportunities are two of HR’s many roles. As a new software engineering manager, one of your first steps should be to visit the HR office and ask about:

  • What you need to know as a manager.
  • Getting a copy of the employee handbook or HR manual for your own reference.
  • Details for any continued education offered by the company to promote to your team.
Startups, small businesses, and quite a few “tech-first” companies may not have an HR manager, team, or policy, at all. In that case, here’s a free sample HR program that you might customize for the interim. Human Resources helps prevent (and mitigate) problems that can put businesses out of business. These include employee disputes, discrimination, employee vs. contractor issues, and the like. HR issues are not trivial. Uber paid $4.4 million to settle a sexual harassment case. Google paid $11 million for age discrimination. Why should this be of any concern to you? The simple fact of the matter is that you have a first-row seat on what is going on in your department. Your company can liable for what happens on your watch. With the help of your HR team, you have the capacity to help prevent your office from descending into a toxic environment.

Fifteen Minutes - The 1% difference

The last point we’d like to make about how to become a great engineering manager is a thought experiment. Checkout Neil deGrasse Tyson’s video above or watch the difference 1% can make on YouTube.

Similarly, your top 1% of customers are worth 18x more than the average customer, per Forbes. Almost half of the world’s wealth is owned by 1% of the population. By extension, the Pareto Principle asserts that (in any economy of scale) half of effects are tied to just 1% of causes. So, it makes some sense to find where 1% of your time can have a huge impact.

Fifteen minutes is roughly 1% of a 24-hour day. It adds up to over 90 hours a year. It’s comparable to over two regular work weeks or classroom time for two college courses. Getting back to supporting your team – consider this an invitation to spend 15 minutes in other departments every month. Learn about what they do and how they do it. You might have an idea or suggestion that could save them huge amounts of time. Let your team in on the fun, too.

Think of it as a social experiment. It’s an opportunity to help all of your team members develop and practice their social skills, too. We know you’re all kind of geeky – and we love you that way. /end public display of affection….

If you’re a new software engineering manager, maybe we can help? Is your team using an automated software analytics tool? We welcome you to check out our free trial to make a quick comparison of features and reports. If you aren’t using a software development analytics tool, you can also sign up for the free trial period and check it out.

It’ll help you automate the gathering of software development metrics, interaction analytics, frequency of commits, volume of code churn, and more! Best of all, you don’t need a credit card to try it out!

10 Benefits of APM Software

10 Benefits of APM Software

What is application performance monitoring software (APM software)? How can they help you? What are the benefits and which are the best ones on the market?

Read More »

Spread the word

Share on facebook
Share on twitter
Share on linkedin