How to handle hypergrowth like Grammarly

Grammarly has a simple but ambitious goal: turn all of its users into great writers. 

Their product has become synonymous with quality and working professionals the world over depend on the digital writing assistant to improve their grammar, catch spelling mistakes and write engaging content. 

Live From INTERACT: Engineering Leadership Screwups

Have you ever had to manually book 50,000 flights because you rushed to deliver new features on your product?

In this episode of the Dev Interrupted podcast, we asked some of our favorite engineering leaders if they could share memorable stories of professional mistakes with our audience.

Defining the Developer Experience

If you run a software company, it’s common to think about the User Experience (UX), how they experience your product when they use it, how intuitive it is to interact with, how quickly someone can accomplish an activity within your product, and how they feel about that process when it is completed. 

The developer experience (DX) is similar, but instead of how your customer experiences using your software, it’s how your developers experience the process of adding features, fixing bugs, doing code reviews, meeting testing objectives, coordinating on QC/QA requirements, and fulfilling their responsibilities in the release process. 

Pros and Cons of the Service Provider Model

One of the more common coordination models is the Service Provider model. When a team is a Service Provider, they:

  • Have valuable skills they offer other teams.
  • Are a dependency for those other teams. They do work for those teams. 
  • Do their work per ticket, per project, or per initiative. When their work is over, they either do work for someone else or work on their own priorities. 

The Service Provider model is one of the least effective coordination models in software engineering teams. There are some legitimate reasons to use this model, but you should avoid it unless you’re aware of the tradeoffs. 

9 Signs You May Be a Bad Manager

Introduction

If you have worked long enough, chances are you have encountered a bad manager yourself. What was it about them that irked you the most — were they unforgiving, critical, demanding, abusive, aggressive, neglectful, grumpy, lousy, or plain inept? Was it their attention-seeking behavior, attitude to blame and insult others, inability to trust, or lack of integrity that caused you the most mental agony? 

Yes, bad managers suck so much emotional and mental energy from their people that there isn’t any energy left to do real work. The hard truth is as more and more time is spent on “pleasing the boss” and “dealing with their tantrums,” there’s less time left to do any quality work.  

Abandon Overconfidence And Engage In The Rethinking Cycle

An argument with a coworker — conflict of opinion. Working on a project that doesn't energize you — conflict of interest. Didn't get the promotion — conflict of growth. Working super hard with no time for personal life — internal conflict. Saying yes to work that doesn't align with your goals — conflict of priorities. Committed a mistake, but can't come to terms with accepting responsibility — conflict of values. We don't realize it, but most interactions at work lead to a major or minor conflict.

When it's a minor conflict, we feel a sense of discomfort in our body but can't pinpoint the exact source of the discomfort. Most of the time we ignore this conflict while it sits within our subconscious as we go on with our daily life. A major conflict, though, looks and feels very different. Even though there's no real danger, our mind perceives the conflict as a threat.

How To Give Feedback That Matters

When we think of giving feedback, we promptly think about correcting others. But giving feedback is as much about telling others what they are doing right as it is about telling them what they are doing wrong. It’s as much about reinforcing good behaviors as it is about eliminating bad ones. It’s as much about singing praise that comes off easily as it’s about giving constructive criticism that makes you uncomfortable. 

If you are a manager or a leader, telling people what they ought to hear is not your job, it’s your responsibility. You are the person standing in the way of hundreds and thousands of employees who count on you every day to grow. Not making an effort to tell your people how they are doing and what they can do better, only because it makes you uncomfortable is an act of irresponsibility. 

How to Hit the Ground Running as CTO/VPE

When starting a new role as a tech executive, it is common to feel slightly disoriented at first. That’s because, in most startups, you’re not going through a ready-made orientation process. More often than not, you have to carve your own path forward without a lot of guidance.

Having aided many CTOs and VPs of Engineering during their onboarding, I have thoughts about this. Your personal onboarding can feel overwhelming, especially when you are taking over an organization that is already up and running. However, once you acknowledge that you are supposed to take charge and organize this for yourself, you should already be better off. Remember, you have agency here. 

Best Business Management Software

Business management software empowers you to streamline your internal processes into workflows that garner results. The trick is finding software that can work with your business to help eliminate errors, gather data, and equip you with useful automations. 

Today, we’re looking at the top business management platforms you can use to improve your business across the board. Let’s dive in. 

The Top 5 Best Business Management Software

  1. Zoho One – Best for big businesses that need high customization
  2. Salesforce – Best all-in-one software
  3. Wrike – Best for work and project management
  4. QuickBooks – Best for freelancers
  5. Scoro – Best for service businesses

Below we take a closer look at what each business management system has to offer and whether it’s right for your business. 

#1 – Zoho One — Best For Big Businesses That Need High Customization

  • Hyper-detailed platform for large teams
  • Robust automation capabilities
  • Exceptional customization levels
  • GDPR compliance built-in
Learn more

If you’re managing large teams with enterprise-level needs, Zoho One offers comprehensive bespoke solutions for businesses that need a wide array of tools that are highly customizable. 

Let’s face it, big teams can have a harder time staying nimble as they cater to customer’s needs and manage a growing audience. Zoho One offers everything from sales and marketing solutions, productivity and collaboration tools, HR and customer experience tools, finance and accounting, and even a low-code developer platform all at a granular level of customization. 

It lets you automate daily tasks, set SOPs, streamline data management, and create workflows exactly how you need them. Not only that, Zoho One leads you through the onboarding process by taking care of migration needs, equipping you with in-depth product knowledge, and helping you set your unique technical needs. 

For enterprise-level needs, security and privacy are of utmost importance. With Zoho One, you can be sure you’re GDPR compliant as you execute operations globally. Data gathered through Zoho isn’t sold to third parties, as they manage data security issues with great care. 

Here’s a look at Zoho One’s two pricing plans:

  • All Employee – $37 per user per month
  • Flexible User – $90 per user per month

In the All Employee plan, you must purchase licenses for all of your employees and with Flexible User, you can purchase a license for any number of users. Both prices above are billed annually.

To learn more about Zoho One’s enterprise-level plans that include customization, you’ll have to get in contact with its sales team. 

Get started by reaching out to Zoho today.

#2 – Salesforce — Best All-In-One Software

  • All-in-one customer-facing platform
  • Built-in AI feature for flawless automation
  • Free employee training included
  • Flexible pricing
Try free for 30 days

Salesforce stands out as the all-in-one solution option for businesses that need streamlined management across every department. Its Customer 360 option, for instance, is designed to unite all your teams around one thing: your customer.

Salesforce does this by uniting sales, marketing, IT, service, commerce, and analytics into a customized solution that caters to your specific needs. Salesforce’s Einstein AI feature makes sure you can automate repetitive tasks and time-consuming tasks, even if you manage teams that are working far apart from each other.  

What’s more, Salesforce also offers free training through its Reskilling hub, where your employees, old and new alike, can sharpen their skills while they learn the ins and outs of every tool Salesforce’s software has to offer. 

Salesforce’s Customer 360 approach also makes sure all your team members have access to crucial data to be able to make smarter and quicker decisions. 

It’s not an exaggeration to say Salesforce is a truly feature-rich business management tool. So if you want to get familiar with its prices, it’s best if you navigate to its extensive pricing page where it breaks down plans by either need, business size, or industry. 

For instance, its small business management software plans break down as follows:

  • Essentials – $25 per user per month
  • Sales Professional – $75 per user per month
  • Service Professional – $75 per user per month
  • Pardot Growth – $1,250 per user per month

If you don’t yet want to commit, Salesforce also lets you try any plan for free for 30 days once you answer a few questions about your business. 

Ready to dive in? Get started with Salesforce here. 

#3 – Wrike — Best For Work and Project Management

  • Unify your team in one dashboard
  • Ready-to-use workflow templates
  • Extensive library for employee training
  • Three plans under $25 per user per month
Try free for 14 days

Sometimes, your business needs software that simplifies work and projects without bringing too much complexity. That’s where a tool like Wrike can be an optimal solution. 

Wrike offers dashboards, processes, and automation tools for seemingly every business team. It can take care of anything from:

  • Marketing
  • Project management
  • Professional services
  • Business operations
  • Product Management
  • IT teams
  • Digital marketing teams

Wrike enables you to break down silos and connect all your teams through an easy-to-configure platform and secure cloud collaboration. Moreover, its customizable status reports help you keep everyone in the loop. With its out-of-the-box templates you can plan objectives and KPIs with actionable items that teams can organize on kanban boards with plenty of integrations. 

One of Wrike’s standout features is its library of Wrike courses. They educate you on all things Wrike, including modules on building teams, managing processes, and increasing productivity all through the Wrike platform. In fact, Wrike won an award for the best customer training program in 2020. This all sounds great, but how do its prices break down?

  • Free 
  • Professional – $9.80 per user per month
  • Business – $24.80 per user per month
  • Enterprise – Contact them for more information

For small businesses, Wrike can be a free tool worth using to streamline and scale processes. From there, its most popular Business tier at $24.80 per user per month offers more robust work management tools with plenty of reporting features and access to additional customization options. 

If you haven’t made up your mind yet but think Wrike might be a tool you’re interested in, you can start a 14-day free trial for any plan you’d like to get a real feel for how the software operates. 

Get started with Wrike here.

#4 – QuickBooks — Best for Freelancers

  • Accounting and time tracking
  • Payroll add-on available
  • Great for solopreneurs
  • All plans under $75 per month
Learn more

Business management software isn’t just for big businesses with large teams. Solopreneurs and freelancers need processes and automations to streamline their operations too. QuickBooks can be a solid option for freelancers and one-man businesses that need to get a handle on their accounting and time tracking needs. 

With QuickBooks, you’ll have an easier time getting paid and sending invoices, keeping track of income and expenses for tax purposes, and you’re able to gain clarity on how many hours you’re actually working. 

QuickBooks lets you ditch limiting spreadsheets and replace them with powerful cash flow management, as well as reporting features that’ll help you keep cash flowing. Need payroll? You can easily add that to your plan. 

Its time tracking feature, a crucial part of keeping a well-oiled freelance workflow, takes note of hours worked for an easier time calculating payroll and billable hours. Thankfully, QuickBooks isn’t only built for efficiency, it’s also an affordable solution. 

  • Simple Start – $12.50 a month
  • Essentials – $20 a month
  • Plus – $35 a month
  • Advanced – $75 a month

For only $12.50 a month the Simple Start plan gives you access to income and expense tracking, invoicing, general reports, cash flow, and contract management. However, for more advanced features its most popular Plus plan can run comprehensive reports, capture and organize receipts, manage and pay bills, and even includes access for up to five users. 

Ready to get started with QuickBooks? Start here. 

#5 – Scoro — Best for Service Businesses

  • Centralized dashboard to track all KPIs
  • Track progress in real-time Gantt charts
  • Robust automation capabilities
  • 3 plans under $40/user per month
Request your demo

Managing a service-based business? Scoro has the tools you need to quicken your business processes through automation and data management. With Scoro’s real-time Gantt charts, your team can track progress in real time and lets you set tasks, dependencies, and events. 

Scoro lets you create customer pipelines, automate billing and recurring invoices, and even automates the process of sending late invoice reminders. As far as data goes, it lets you automatically compile reports, and track KPIs through its data-rich dashboard. All of these tools and more help you manage the entire project life cycle on an intuitive and easy-to-use dashboard. 

Built-in calendars, task lists, and time trackers make sure you’re keeping a finger on the pulse of all your service projects for higher rates of success. One of the best parts? Scoro can be pretty affordable for businesses that want a service management tool that can scale with them as they grow. 

  • Essential – $26 per user per month with a minimum of five users
  • Work Hub – $37 per user per month
  • Sales Hub – $37 per user per month
  • Ultimate – Contact the sales team for pricing

Scoro offers a demo and a free trial if you’d like to try it out first. 

Get started with Scoro here.

How to Find The Best Business Management Software For You

Finding a fitting business management system isn’t a situation where you can just eye some features to find out if any given tool will work for you. 

While it’s pretty straightforward that you’ll want your budget constraints, the size of your team, and your overall business goals to dictate which tool to onboard, there are additional criteria you can think through to maximize the chances of finding the right one. 

Customer Management

Before committing to any tool, it’s worth determining what customer management tools your business will make use of. 

Tools that enable you to do things like create customer profiles, or to anticipate the needs of a customer through tracked data might not be necessary for young startups or freelancers. It doesn’t make sense to invest in a more robust software if your business won’t truly need it— since more complex business management software almost always means you’ll have to pay more each month. 

On the other hand, if your business has hundreds of employees and/or thousands of customers, a heavier customer management software package might be worth investing in.

Training and Onboarding

The more complex your business management tool of choice, the more of a learning curve your team will have to deal with. Fortunately, the best business management software providers know this and make it easier for businesses to use their software by designing an onboarding process— or at the very least providing a library of knowledge. 

This way, any downtime is minimal during the onboarding process, your team will feel supported as they’re introduced to a new tool, and the transition to new software can be as smooth as possible. Some software providers come with customer support forums, an extensive knowledge library, and even on-demand training webinars and videos. 

Knowing there’s a library of material they can refer to can save your team a lot of time and avoid miscommunication. 

Summary

Without a doubt, the right business management software can transform the way you work. But first, you have to find one that works with your team’s needs and business goals. Here’s the complete list of software we went through as a quick refresher:

  1. Zoho One – Best for big businesses that need high customization
  2. Salesforce – Best all-in-one software
  3. Wrike – Best for work and project management
  4. QuickBooks – Best for freelancers
  5. Scoro – Best for service businesses

Once you’ve carefully read through the guide and considered your options, you can take advantage of the free trials and demos each tool offers before making a full commitment.

9 Things I’ve Learned About Software Development Management

Managing the software development process has been likened to herding cats. In other words, you can’t really do it, but you can sure give it the old college try. 

It’s no secret that managing the development of a software project is an imprecise science. Here are nine truisms that I’ve learned over the years that have helped me to understand the limitations of our ability to manage the strange world of software development projects.

Your dev team lead is not controlling enough

Three phases of a controlling engineering manager

Every morning, I see the unfiltered thoughts of 1200+ engineering leaders as one of the community moderators in the Dev Interrupted Discord server. We start every day with a Daily Interruption topic about how to make agile work in real life; scaling teams, building culture, hiring, continuous improvement, metrics - fun stuff like that. 

Recently this Daily Interruption popped up and stopped me in my tracks:

Good Meetings

Like it or not, meetings are essential to a good working environment and communication. Therefore, it’s crucial that we work on making them as productive as possible. Today we’ll explore myriad ways to keep meetings coordinated, well documented, and talk about how to recognize and steer away from anti-patterns.

I’m timid to write this because I have not always hosted good meetings. I have, however, hosted thousands of them, so I’ve learned both from some mistakes and successes. In all likelihood, if you do any kind of management or lead work for a while, you’ll also see your own spectrum of meetings: meetings with different types of agendas and purposes, meetings with varying levels of awkwardness, meetings that didn’t have a formal outcome. We’ll dive into all of these in this article, as well as some tips for each.

The truth is, a meeting by its nature can almost never be perfect because it is by definition a group of people. That group of people will consist of different people: with different tastes, different opinions, different priorities, and different values. There’s a high chance that not everyone will agree on what a great meeting is. So half of the journey is aligning on that.

The Good, The Bad

One thing’s for sure: we can agree on what a bad meeting is. So let’s start by using that as a ballast:

  • There’s no clear purpose or direction
  • It feels chaotic
  • The wrong people are there
  • People are generally disrespectful of one another
  • Everyone feels it’s a waste of time

From those assertions, we can then derive what a good meeting is:

  • The purpose of the meeting is clear
  • There’s an agenda (we’ll dive in to the complexity of this in a moment)
  • There are the right people in the room. Not too many where communication is overly complicated, not too few where the people you need to move forward aren’t there.
  • There’s some order. People aren’t dropping in and out, talking over each other, or being generally inconsiderate
  • There’s a clear decision, outcome, and next steps at the end

Purpose of the Meeting and Direction

The first point and the last are connected: to have a good meeting, there is a core. You’ve all come for a unique purpose, and the end of the meeting should encapsulate what you’ve learned about that purpose and what the next steps are. Thus, the beginning and end of the meeting might sound a little similar:

We’re all here today to discuss how we’re going to support the next version of framework X. I have some new data to show you that frames the direction, Hassan and Jenna are here to talk about some of the details of the implementation, and Angela, we’d love to coordinate with you on a rollout process because it affects your team.

And at the end:

OK, so we decided we’re going in Y direction. Angela, your team seems comfortable doing Z, is that correct? And the rollout timeline we’ve agreed on is 5 weeks. The next steps are to explore the impacts of A, B, and C and reconvene in a week on our findings and process.

This is just an example—it’s not important to model this precisely. But you should be aligning at the beginning and end of the meeting to make sure that nothing major is missing and everyone is on the same page. If you haven’t come to a decision by the end of the meeting, then your next steps may be either to figure out who will make the decision and inform everyone or roll over to a new meeting.

Ideally these sentences are encapsulating information everyone needs:

  • The shared purpose
  • What you’re doing about getting to that outcome
  • Who is owning what
  • How
  • When, what are the timelines

If there are people there who do not need to know this information, they probably shouldn’t have been at the meeting in the first place.

The Agenda

Beyond deciding that a meeting should have an agenda, there are so many ways and means an agenda can be used. Strangely enough, an agenda can also be a way to not have a good meeting, so let’s explore that, too.

An agenda should ideally always state the purpose of the meeting. I personally love to then include some bullets as talking points, as well as space to take notes right in the document during the meeting.

Sometimes people use an agenda to write thoughts down before the meeting, and I would strongly suggest you steer clear of this—there’s nothing wrong with a person keeping notes for themselves for the meeting but if you come to a meeting where an agenda is locked top to bottom with material, it can sometimes shut down the collaborative aspect of the meeting—which means it shouldn’t be a meeting at all, it should just be a shared doc, to be consumed async. Part of the purpose of the meeting is the discussion itself. Again, louder:

Part of the purpose of the meeting is the discussion itself.

Not all meetings are the same

There are also different kinds of meetings. Let’s go over what type of agenda you might use for each:

Brainstorming session: perhaps you don’t want a full agenda, just the purpose and a notes section, or even a Miro board or other whiteboarding tool to use for capturing people’s thoughts, with small areas stubbed out.

Weekly discussion or daily standup: I typically have folks add whatever they like to ours, prefacing their contribution with their name and a small category, for instance, RD for rapid decision, D for discussion, and P for process. Here’s an example:

- [Sarah, RD] should we block off 4 hours to triage our iceboxed issues?

Our team uses a kanban board during the standup and people take turns talking about what they’re doing for that time period. It’s nice how it helps solidify the tasks and priorities for the week, and allows for some course correction if there’s accidental misalignment before the work is done.

We also talk about what was done or shipped in the previous week so we can celebrate a little. Especially on tasks we know took the person a long time or took a lot of effort.

We found through trial and error that twice a week check-ins suited us: once on Monday to kick the week off, and again on Wednesday to keep us aligned and the momentum going.

Cross-Functional meetings: This is one where a more formal agenda with some preparation can be really helpful, so that all parties have enough information about the purpose and what’s being discussed. If you have a lot of information, though, I would suggest creating a one-sheeter and sharing that ahead of time instead of adding everything to an agenda. Sometimes if I know everyone is too busy to read everything async, I will give the first 5 minutes to the group to read through the one-sheeter on the call so we’re all on the same page. People usually appreciate this. YMMV.

All this said, agendas are very useful, but I’ve seen strange culture arise from making strict rules around them. The point of the agenda and meeting is to collaborate on something. That point is nullified if folks are putting process ahead of that impetus.

The best cultures I’ve worked at use both meetings and agendas as tools for working together effectively- tools that everyone equally feels responsible for making useful.

All Kinds of Awkward

OK, you led a meeting! You gave people purpose, you set direction and timelines. But why was it so awkward?!

Not all forms of awkward are bad, really. There are different kinds of awkward, and some are quite natural, some are more harmful. Let’s analyze this for a moment, starting from most innocuous to something more insidious.

You all didn’t know each other well

The team I got to work with at Netlify was some of the silliest, most collaborative, and trustworthy groups I’ve ever had the pleasure of working with. We actively cultivated this culture and it was great fun. Every meeting started with goofing off and chatter. Then, when we got to business.

The meeting would flow effortlessly because we were all comfortable together. One time a friend in the People department asked “what do you do to break the ice with your team”, and I jokingly responded “ice? Our team? No… we don’t need that… maybe we should be frozen?”

Not all conversations are going to be like this. We knew each other fairly well and actively worked to have vulnerability together. If your meetings with other groups you don’t know well have awkward moments, that’s actually pretty natural, and nothing to be too concerned with. You can try to make conversation and that can help, but trying to force it too much can also feel a bit stilted, so just ease up on the guilt for this one. There’s nothing wrong with you, I promise.

There were too many people

During the pandemic, my husband and I would sometimes try to replace in-person dinner parties with zoom versions of the same. What we learned was they didn’t quite work at scale. When you have an in-person party with 12 or more people, everyone doesn’t really stay in one huddle together, they break off to smaller conversations. When we started hosting the zoom parties with smaller groups, the calls became more fluid, relaxed and comfortable.

There’s a certain scale at which conversation begins to feel performative because there are so many eyes on a person when they’re speaking. Meetings are very much the same. Try not to invite too many people to a meeting. If you are worried folks might not feel included unless you invite them, you can either mark them as optional or let them know you’ll be sure to tell them the outcome.

If you’re inviting too many people because there’s a company culture that everyone should be involved in every decision, that might be a sign of a wider issue that needs some solving. Companies at a certain scale start to have issues functioning if there is no clear understanding of ownership. If you’re inviting everyone out of fear of hurt feelings often, it’s likely not a problem with your meetings, and more a sign that you need some clarity. See the DRI section at the end of this chapter for more information on how to mitigate this.

There’s something people aren’t saying

This kind of awkward is probably the most harmful. If the meeting is awkward because people don’t feel comfortable telling the truth, or there’s an elephant in the room, or there’s a smell that needs to be dealt with. Elephant smells? Ok, moving on.

We should watch out for this and try to do something about it. Personally, I’m a “walk towards the fire to put it out” kind of person, and will actually just acknowledge that it’s awkward because it doesn’t feel like we’re being transparent with one another. I’ll state what I know from my perspective and then ask if other folks are feeling the same. 

If you do this, you’ll usually have to wait a beat or two. People will likely be a bit shocked that you came right out and said it. It will take them a couple of seconds to adjust and consider what will happen if they tell the truth, too. It’s crucial that you not speak to fill the silence in these moments. It will feel very uncomfortable, but I promise, you have to let the silence hang for a bit before someone speaks up. Typically from there, people will all start speaking, and you can actually dig into the problems.

Conflicts

There’s an entire chapter devoted to conflicts because the topic is big and nuanced enough to warrant its own time and space, but let’s apply some of the principles here, because there is an intersection of good meetings and dealing with conflicts directly.

The most important piece here is that conflicts are not something to be avoided. It’s not bad that people feel passionate about their work, it’s great. Not all conflicts are negative- the point of the meeting may be to bring to light where folks aren’t aligned. There probably is some base premise or problem they are all trying to solve, but they see the solution differently. It can help to find the alignment there so the ideas can be fleshed out without being attached to a particular person’s identity.

 The identity thing can be a pitfall, because if you have two people discussing their idea instead of an idea, it can feel to them like someone is rejecting them rather than a concept

We want to try to guide towards an approach where it doesn’t feel like anyone is attacking one another, and also manage actively against people being disrespectful to one another. It’s the job of a manager to disambiguate healthy conflict from attack so that respectful discourse is encouraged. If folks are putting out ad hominem attacks, it’s on you to reel that in and move the conversation towards the work instead. Otherwise, it really is hard for the conversation to stay productive.

Typically I’d say it’s good to hear people out, and then reign things back in by discussing what you think you’re hearing and tying it back to a shared purpose. Then we find where we have common ground. Here’s an example:

“What I’m hearing is that Rashida feels that team X is migrating a system that affects her team while they are trying to release a big feature. Is that correct? And that Jerome feels that it’s crucial that team X be able to migrate the system soon for stability purposes. Is that correct?

“OK, well, it sounds like we have a shared goal of making sure the company can ship features with some stability. Perhaps we can talk through what timelines are immovable and which are not so that we can stay coordinated?

“I’m sure we all want to be able to ship said feature without any hiccups and also get the new system up and going”

Here, we stated what we thought we were hearing, which allows for the person to either feel heard or correct us if we’re mistaken and there’s a miscommunication. (Sometimes there is!)

Then we stated the shared goal from both parties, as well as risks and constraints that may play a part in some of the conflicts that need to be ironed out.

You’ll note in the last sentence, we try to tie a knot for a vision of stability that addresses both of their understandable needs.

A couple of things to note: I’m giving an example here and you absolutely don’t have to do it like me. The most important thing is that folks feel heard and that you all agree on what the conflict is. And that you remain open to that discussion, while finding the base premise of why you’re even talking about it.

It’s also way easier said than done. If you have a conversation that goes off the rails, I’d suggest spending a bit of time after you’re off the call to write down what you think happened.

I tend to give myself a section to just talk through the facts of what happened, and then another to talk through my feelings of what went poorly and what could have been better. It helps to check in with the facts separately because our human brains can sometimes try to protect us and see a particular version of an event. Hard to do, but checking in with just the facts helps ground that a bit.

There can be times where a strong conflict happens during a meeting and you’re at an impasse, and you need to give folks time to regroup. I’d suggest calling another meeting in a week as a follow up, and try to hear people out individually in the meantime. Sometimes people need a little distance from a matter, or they’re having a hard day, and that’s totally ok.

The DRI

The DRI stands for “Directly Responsible Individual” and is one of the most important pieces that we haven’t covered yet. A good meeting must have a DRI, and it is not necessarily the person who called the meeting. It might not be you. But you must designate who owns the project and ultimately makes decisions when there’s one to be made.

Why do you need a DRI? Well, as much as you do want to hear input from everyone, eventually you have to make a decision, and there are plenty of things in software development that don’t necessarily have one true answer.

Note that the phrasing is not PWMD (Person Who Makes Decisions) though that acronym looks pretty hardcore. Instead, we use Directly Responsible Individual because that’s also core to deciding who this person is. They are the person who is going to own the outcome.

That’s part of why not everyone can get equal say- if it’s your project and you are on the line for the outcome of whatever decisions are made, you can see how you would also need to own decision making. And likewise, if people who have no skin in the game decide things, they might not understand all the moving parts or invest as much in the gravity of the matter.

The appointment of the DRI not only unlocks the groups to make final decisions and move forward, but also places the responsibility on the party that will carry the weight.

There are several systems of ownership you can explore, such as DACI, which separates out Driver, Approver, Contributors, and Informed so that everyone knows their roles, and several others such as RACI and RAPID. Use whichever system makes the most sense for your organization.

I find it best to identify this person early on in a project and make sure it is restated at the start of a meeting (it can be included on the agenda as well), as it helps greatly if you find yourself at a crossroads. This person can unblock you and help the group move forward.

Moving Forward

It may at times feel like meetings are a drag on a software engineering process, but it doesn’t always have to feel this way. There’s something special about collaborating with a group of people who are respectful and working towards a common purpose. Good meetings can provide clarity and save people hours and days of work when they’re headed in the wrong direction. Having clear ownership, documentation, and only the right people in the room can keep many teams in lockstep, even when problems are complex.

Buy the Book

This is just a sample of the kind of content from my latest book coming out soon…


The post Good Meetings appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.

What Matters In Goals?

In most organizations, big-picture thinking comes off as a seasonal flavor often appearing every few months. Mental gymnastics that goes with determining the “why” — meaning or purpose of goals, the promise of a better future, and the excitement of doing something new definitely gets the creative juices flowing. Though not for all, most people in the organization find this phase highly energizing and exhilarating. But does this motivation last long? 

The big picture thinking soon goes out of the picture, being replaced by its nitty-gritty sister who’s only concerned with the “what” — the actual mechanics of getting from point A to point B, steps in the process. With the hostile takeover of the nitty-gritty thinking that’s only concerned with the “what”, the memory of big picture thinking with its “why” soon fades away. What happens then?

Open-Source Tools You Should Be Aware of to Manage Your Cloud

Businesses of all sizes are shifting some or all of their data and applications to cloud computing environments to take advantage of all the benefits available to them: availability, flexibility, scalability, accessibility, etc… The migration and the tools used to do it have to be assessed correctly to be successful.

The purpose of this article is to list tools that everyone should be aware of when it is time to manage a cloud infrastructure. In the cloud, it is obviously better to rely on cloud services offered by the provider but sometimes it is better to use open-source projects to facilitate the management.

Pros and Cons of Outsourcing Software Development

If you notice the trend of outsourcing software development these days, you must know the fact that Vietnam is becoming the new powerhouse of skilled technical workers. They have a broad knowledge base to complete tasks as data mining, analysis, and innovation.

As a result, a productive yet cheap workforce is one of the reasons why many businesses are considering outsourcing their software. And before making any decision, let’s see how outsourcing benefits you and what all the bad sides are when it comes to this activity.

Eight Questions I Had Every Day As A Dev Team Lead

When I was a software developer manager, there were a lot of questions.  Questions that my boss asked me.  Questions that I had myself.  Questions that arose when discussing work with my team. And most of these were questions to which I did not have a good answer.  I couldn’t respond well to them because I didn’t have the data necessary to give a definitive answer.  

The data was there, but without a way to get at it, I often felt like I was stumbling in the dark. But all is not lost.  Here are eight questions that I had, and ways that data inside your tools can be used to answer them.