4 mistakes engineers make when building a SaaS company


Before I joined Loggly as CTO and VP of Engineering, I built seven cloud-based products. From my perspective, four mistakes separated the SaaS companies that stumble from the best.

1. “Adoption for our offering will take time, so we can build fast now and build right later.”
Look at how steep the technology adoption curve has become. Every SaaS product needs to be built for scalability and robustness from the start.


Image courtesy Udayan Banerjee

2. “Our customers have predictable behavior.”
Be ready for something unexpected that will threaten to break your service, and have processes for managing out-of-policy activities. For example, Loggly must deal with customers that send a huge burst of log events, inadvertently or during a fire, 24-7.

3. “We don’t need operations automation.”
Operations is at the heart of every SaaS business, and they shouldn’t be treated like sysadmins. By automating defrag of ElasticSearch, Loggly devops saves about 15…

View original post 117 more words

A Shared Purpose Drives Collaboration

11 Books Every Young Leader Must Read

This is a great collection of books. In my opinion, Seven Habits by Covey should be read first, if you haven’t already read it. This is a book that I read and read again and again.

How to Manage Verbal Requirements

imageAll the project management practices advocates that the requirements should be properly documented. I agree to this. But it is not very infrequent that you get the requirements over the phone or verbally. Someone just called in and asked you to some changes in the module that is currently being developed. And if you are not unlike me, you know the consequences sometimes are  very drastic in nature.

Let me explain this by an example. Once there was a psychotherapist – highly educated and very talented. He decided to open a clinic in the city. Once everything was done, he called up a local painter and asked him to paint his signboard. The painter did his job very well but when our psychotherapist saw this, he fainted. He then starts shouting at the painter. And painter was not able to understand what went wrong. What actually happened was that the the painter was asked to pain ‘Psychotherapist’ on the sign board. However, he painted ‘psycho the rapist’.

I hope you can now imagine what happens with the verbal or telephonic requirements. So how to cope with these? In practical scenario, you cannot avoid verbal requirements. I follow a process, which I call ACR (or Accurately Confirmed Requirements, as my teammates call this) to cope with such situations. The three step process goes as below:

  1. Accept the verbal or telephonic requirements – since you cannot avoid this, it’s better to accept this strategically.
  2. Confirm – once you have received the verbal or telephonic requirements, review them in your head to make them more clear. Once you know clearly what the caller wants, draft a mail. Write down what you understood and send it back to the person who gave you the requirements. Ask him to confirm whether your comprehension of his thoughts is right. This will help you both to be on the same page.
  3. Record – After getting the confirmation from originator of the requirements, document it. You may need to update the requirement documents or project scope statement.

ACR is always followed by the planning and execution on the new requirements.

Previous: Save Your Project from Communication Gap | Next: Why Project Gets Delayed?

Related Links


*Image source: Google image search

[tweetmeme source=”yaneshtyagi” only_single=”false”]

Save Your Project From Communication Gap

imageToday, In a casual discussion one of my colleague told me that he has forwarded some queries on a proposed project to his boss. His boss will get it clarified with the client and update him on the same.

This reminded me about one of my project long back. There project team was forbidden to talk to client directly. All communication happened through project manager only. The mode was like

team member <–> team lead/architect <–> PM <=> client PM <–> client’s technical team

  • Result: one week time to get a query answered. That too with insufficient or incorrect answers.
  • Consequences: slow project progress, unhappy stakeholders.

One day, fortunately, we got a new project manager. And the forbidden forest became easily accessible. Now you could directly talk to the person who can solve the query, be it client PM or client’s technical staff. This small change accelerated the project progress. Rest as they say is history.

I learned certain stuff from this and created a theory that communication gaps kills the project. When I started managing the projects, I always emphasize on the following three factors:

Communication gap kills the project

The more channels in the communication medium, the poorer is the quality. There are two factors – one, indirect communication slows down the process; two, at each level there is loss if information. Indirect communication results in a slow and incomplete message. This raises another set of queries – which again slow down the progress. This may gradually kill the project.

Communication should be as direct as possible

Direct communication resolved the issue in a faster way. When knowledge possessor and knowledge seeker talks directly, there is no loss of the information. Further, any query which arise out of the answer, will get answered immediately. As a project manager you should keep the communications between teams as straight as possible.

But don’t forget the keep the stakeholders in loop

This is most important. You must always be informed about the information that is being exchanged between the cross team members. This is required for the good health of the project. This will help you to  – 1. keep the project scope in control, 2. keep the project documents up-to-date and 3. Keeps you up-to-date on the current state of the project.

These three things will add rocket fuel to your project and make your life somewhat easier.

Previous: Why Project Gets Delayed? | Next: How to Finish a Project On Time

Related Articles:


[tweetmeme source=”yaneshtyagi” only_single=”false”]

How to Finish a Project On Time

imageIn the previous post, I explained why a project gets delayed. Here I will explain how to deliver a project on time. Keep the following four things in minds and you will be able to deliver your project on time.

1. Manage your scope very carefully

Project scope tends to increase. There are several reason for this. Sometime project team itself increase the project scope. A team member thinks that feature-X is a blasting idea and it will be very useful to the end user. He may be right in his thinking but time to implement feature-X was not estimated. So doing so will either waste the buffer time or consume a slice of time from some other task. A project manager should always keep an eye on the project scope. Having the requirements defined very clearly and reviewing the tasks status regularly helps in keeping the scope under control. In my projects, I always welcomes the new ideas from team members. However, I take the decision after carefully reviewing the current status of the project, available time and other factors.

2. Implement a change control process

In continuation to keeping the scope under control, you MUST implement a change control process. Project stakeholders tends to change the scope of project. This happens because someone just discovered a new idea which he thinks will make the project super successful. As a project manager you should welcome such ideas. However, do no jump to implementation immediately. Instead, follow your change control process. Estimate the impact of suggested change on the timeline and cost of the project. Evaluate of the new idea can be implemented in the next phase of project. Communicate your estimations to all stake holders clearly explaining the impact of implementing the new idea on the delivery of the project. Get the approvals on new timelines, cost or resources as applicable before you begin implementing the idea.

3. Keep you plan up-to-date

Always keep your project plan up-to-date. If you are using any software tool to manage your project, the task becomes easier. You project plan should be able to provide you actual vs. planned progress. As I mentioned in my other post, You always need this figure to communicate to stake holders. Your project plan should always be updated in real time to provide you correct figure.

4. Identify any deviations and fix then quickly

If you have your project plan up-to-date, you can easily identify any deviations from the plan. This is the time when you need to land your helicopter at a particular point and look into the problem. You may need to talk to team leader/member to understand the reason behind the deviation. Whatever is the reason, fix it ASAP. If fixing the reason is beyond your control, communicate immediately to stakeholders. Don’t be shy to seek help and guidance from stakeholders.

There are many more factors that may affect the timely delivery of a project. But if you follow the above four basic things, you can dramatically increase the chances of delivering your project on time.

Previous: Why Project Gets Delayed? | Next: How To Report Project Status

Related Articles:


[tweetmeme source=”yaneshtyagi” only_single=”false”]

Why Project Gets Delayed?

imageOne of the core responsibility of a project manager is to complete the project within estimated timelines. However, 80 percent of the projects fail to finish within the timelines. Why?

If you look at the process of estimation, there is always a sufficient buffer. When a project is estimated, sufficient buffer is added to the tasks by the person-resources. A project manager then added his own buffer before committing the finish date to stakeholders. The amount of buffer depends on the experience of project manager and nature of the project. Still, projects are commonly tends to miss the guidelines. In this post, I am going to explore some basic things that helps to finish a project on time.

Why projects gets delayed?

Before I explain how to finish a project on time, you should understand why projects gets delayed. There are two basic factors – The Student Syndrome and Parkinson’s law.

The Student Syndrome

Wikipedia defines student syndrome as:

“Student syndrome refers to the phenomenon that many people will start to fully apply themselves to a task just at the last possible moment before a deadline. This leads to wasting any buffers built into individual task duration estimates.”

The student syndrome is not specific to students. It is very commonly observed in the project team members.

Parkinson’s Law

According to Parkinson’s Law

“Work expands so as to fill the time available for its completion.”

To explain this, let us take an example of a typical team member who is assigned to task A. Task A takes 3 days to finish. However considering the buffer, team member gives an estimated time of 4 days. While executing the task, if team member finishes it in 3 days, it is most unlikely that he will deliver the task at the end of third day. Instead he will do some extra effort on the task to add some nice-to-have features and deliver it on the fourth day. This has two effects – change in the scope of work; and the buffer of one day got wasted.

These two factors explains what lies at the bottom of delay in project delivery.

Other Factors

There are many other factors that can delay the project delivery. Some of these are

  • Unmanaged scope
  • Lack of change control process
  • Static project plan
  • Unable to zoom-in on the problem area

Once a project manager understands above two factors, he can take some steps to overcome this situation. In the next part of this post, I will explain how to succeed in delivering the project on time focusing on the other four factors.

Previous: The Importance of Project Milestone | Next: Delivering project on time

Related Articles:


[tweetmeme source=”yaneshtyagi” only_single=”false”]