Agile for an IT Start-up – Part II


In the first part of the article, we covered the basics of Agile. In this part we will cover my way of Agile practices which is combined and modified version of Scrum & Kanban.

Let’s dive in.

Consider that you have to develop a software for a customer.

  1. Product Owner & Requirements & Backlog:
    1. One person can be assigned a role to be a product owner and he would be responsible for customer communication throughout the product life.
    2. Similar to traditional software development cycle, the very first thing would be to gather the requirements. But the difference is gather overall requirements for the product.
    3. Overall requirements will give fairly good idea about what the end product would be. Based on the requirements, discuss them with team and create list of Backlog items.
    4. One good practice would be to put detailed information of the requirements along with Acceptance Criteria.
    5. Collaborate with customers and continuously keep refining the list and details of backlog and done items.
  2. Development team:
    1. In Agile every team member is developer. The programmers, testers, designers all.
  3. Sprints & Sprint planning:
    1. Once initial backlog is created, collaborate with all team members.
    2. Priorities the features (backlog items)
    3. Timebox the sprint. i.e. depending on product size and backlog items, decide how much can be developed, tested and delivered within one single sprint.
    4. Divide each requirement into goals and team works to achieve that goal in one or two sprints.
    5. Create Epics and stories from Backlog and goals.
    6. Start assigning stories to developers based on developer and sprint’s capacity. Start with small and keep on increasing or decreasing the number of story assignments based on past sprints result.
  4. Execution:
    1. For preparing backlogs, creating Epics and Stories, Sprint planning and execution we need some tools. Most widely Agile feature used would be Agile Board.
    2. Agile board is simple visual representation of items (Stories) in different workflow states presented in swim lane fashion.
    3. Scrum:
      1. Simplest Agile board would be like TODO | In Progress | Testing | DONE.
      2. You can use a digital tool for this or just draw a board on whiteboard and use Sticky notes to represent your individual items (stories/bugs)
      3. So, when sprint is started all assigned items are put in TODO lane, each item is put in In progress when it’s being worked on, once done item is put into Testing, once Tested and delivered, item is moved to DONE.
    4. Kanban:
      1. The similar board can be configured if you wish to follow Kanban, and same board can be shared with customers to view. Once additional configuration that you can do is set to WIP (work in Progress) limit for each lane. WIP can be number of items, or Estimates or any other condition of your choice.
      2. For eg, we can keep number of items as WIP limit.
      3. WIP for TODO (10), WIP for In Progress (2), for testing (10), Done (10)
      4. As you can see that In-progress has WIP for 2, which would ensure that no developer can work on more than two items simultaneously.
      5. This would also give a clean picture of team’s capacity and availability.
    5. Daily Updates (Stand-ups):
      1. Everyday entire team should gather for 10 mins and share their updates with entire team. This is very important so do not skip on stand-ups.
      2. Updates can be what the person worked yesterday? What he’s planning to work today? What are the impediments if any?
      3. This gives entire team a daily progress; kind of a report and quick actions can be taken to resolve impediments immediately rather than at end of the sprint.
    6. Demo at sprint End:
      1. On the last day of sprint there should be a demo run with entire team (and customer if needed)
      2. Demonstrating implemented feature helps validating the implementation also it may uncover hidden things which are not planned or discussed yet.
      3. It gives opportunity to other team members to review and provide their inputs. Also product owner can get clear picture of the progress.
  5. Review, Improvise and Repeat (Iterate):
    1. At the end of each sprint collaborate with all team members and do a retrospective(review) of the sprint.
    2. First thing to check is Current work in progress and Done items. Based on the plan, ideally all items should be in Done. But if that is not the case, pending items goes to next sprint.
    3. TODO vs DONE items will give you better idea to plan next sprints.
    4. Another important thing to discuss and note: (First point of the Manifesto)
      1. What did we do well?
      2. What did not go well?
      3. What can be done better?
      4. Or simply put GOOD, SAD, MAD points.
    5. This considering above points continue doing good points, create action items for impediments and things that didn’t go well, and improvise the suggested things.
    6. Do a Sprint planning for new sprint based on above and start new sprint.
  6. Delivery:
    1. It is not necessary that you have to deliver after every sprint ends.
    2. There are many services that depend on other services which prevents the developed feature to be delivered.
    3. This is quite usual scenario and hence when we put the requirements in Backlog (Epics), we should divide the epics in stories such that working sub feature can be delivered after end of one or more sprints.
    4. After each delivery demonstrate the results to customer and get their feedback. This would help identifying and eliminating issues and changes requests. Also, customers would get a chance to decide whether any changes are required in final feature or product.

Once you start working in Agile fashion and keep improvising the execution, you’ll get great benefits.

Try to stick to the plan, keep happy and comfortable working environment which would ensure high throughput of team and happy customers.


Q: What are different roles we should have in a team?

A: There is no ideal list of roles for any team. As Agile suggest, team should be flexible and so should the Roles.

This flexibility also gives chance to each team member to take up different roles and responsibilities so as to increase their knowledge.

Some of the roles that I think should exist in role are:

    1. Product Owner: responsible for entire product and product level decisions  


  • Business Analyst (BA):


      1. Responsible for maintaining requirements and assisting in business decisions.
      2. Ensure everything is documented: Requirement along with Acceptance Criteria, Site Maps,
      3. Ensuring that Acceptance criteria is satisfied after every sprint end demo.


  • Designer / UX Designer:


      1. Designer and UX designer are different roles which can be assigned to one or more persons.
      2. Designer is responsible for visual of the product and UX designer is responsible for User Experience (Flows, Navigations, Clicks etc).


  • Programmer, Tester:


      1. In Agile all are developers, and in general scenario, developers are responsible for sanity and Unit testing as well.
      2. For regression and end to end testing it can be advantageous to have different person to test entire application.


  • Agile Lead/ Scrum Master:


    1. To help manage the project with Agile methodologies it’s good to have individual person to handle this role.
    2. Agile Lead or Scrum Master can be of different team or projects and they may server to multiple projects.
    3. Having different person from other team helps getting unbiased opinion and executions.
    4. Also, Sprint planning, Stand-ups, Retrospectives, Synchronising with other teams (Backend, Front end teams), Identifying impediments, creating Action items for them and follow-up to get them resolved etc. All these are challenging tasks. So better done by individual person.


To sum up, I would say, this is what my understanding and learning is. I use both scrum for execution and Kanban board for current progress tracking with WIP limits. I often serve as Product owner along with Business analyst or Programmer, Tester as well and for some projects I serve as Agile lead.

The tools available for Agile management also provides various other features like Sprint Reports, Burn-down Charts, issue tracking etc. which are great additional features proven to be useful for software development.


For detailed information, you can always refer to Wikipedia and other books.

Few references:


Thank you.

Engagement with AlreadyBuilt


In our startup journey, there have been quite a few milestone. Today is another such occasion.

Gyrix is proud to announce our engagement with AlreadyBuilt as an Implementation Partner.


Founded in 2016, AlreadyBuilt is a Startup from Sydney, Australia. It is a B2B marketplace to buy and sell commercially proven solutions with the moto of “Wheel reinvention prevention”.

During our journey at Gyrix, there were many instances where new clients had similar requirements as to the ones that we had already developed for some other client earlier. Due to IP and copyrights limitations, we could not pass on the benefits to the new clients and they had to invest in re-developing the same solution from scratch. We had realized a gap in the market, but could not find an immediate solution.

Soon enough, we came across Mr. Dane Eldridge’s profile on Linkedin, saw something interesting listed there and quickly scheduled a call. We both were excited to learn about each other’s profile and depth of work. There was an immediate synchronization of thoughts. Gyrix shared additional information to qualify through AlreadyBuilt’s stringent on-boarding process. After few weeks of deliberation, AlreadyBuilt confirmed Gyrix as the first ever off-shore Implementation partner.

This engagement opens up new opportunities for both the companies and provide a definite win-win. We wish AlreadyBuilt and it’s team all the Success together !

Agile for an IT Start-up


Before I start with the article, it is prudent to establish my credentials to write on this topic. I am Piyush Ramavat, CTO at Gyrix TechnoLabs. With 10 years of experience under my belt, I’ve worked with companies big and small on Services as well as Products. With 6+ years of experience in India, I have been working in Australia for last 4 years as a Senior Software Engineer.  I have used Waterfall, Agile and Hybrid Methodologies throughout my career and have expertise in driving them in a Start-up environment. That’s it about me.

Ideal Audience: This is a technical article and may not suit a beginner, it is better to have some understanding about Agile before going further.

Here are few links that may help:

So what is Agile ?

Agile management is known since 2001 and is applicable for all type of industries. Agile methodologies are very famous and quite dominant in the world of software development.

There are numerous practices like Scrum, Kanban etc. Each has their own pros and cons and here are numerous tools as well to digitally manage the projects.


The Manifesto for Agile Software Development

Individuals and interactions

Self-organization and motivation are important, as are interactions like co-location and pair programming.

Working software

Working software is more useful and welcome than just presenting documents to clients in meetings.

Customer collaboration

Requirements cannot be fully collected at the beginning of the software development cycle, therefore continuous customer or stakeholder involvement is very important.

Responding to change

Agile methods are focused on quick responses to change and continuous development.

The Agile Manifesto is based on twelve principles

  1. Customer satisfaction by early and continuous delivery of valuable software
  2. Welcome changing requirements, even in late development
  3. Working software is delivered frequently (weeks rather than months)
  4. Close, daily cooperation between business people and developers
  5. Projects are built around motivated individuals, who should be trusted
  6. Face-to-face conversation is the best form of communication (co-location)
  7. Working software is the principal measure of progress
  8. Sustainable development, able to maintain a constant pace
  9. Continuous attention to technical excellence and good design
  10. Simplicity—the art of maximizing the amount of work not done—is essential
  11. Best architectures, requirements, and designs emerge from self-organizing teams
  12. Regularly, the team reflects on how to become more effective, and adjusts accordingly


Well, manifesto and principles look quite impressive and feels like if we follow them strictly we’ll be able to deliver great quality product; on continuous basis; on time.


Q: But how do we do that?

A: Firs thing Agile says is “being flexible”. There are many practices and methods available like Scrum and Kanban to manage and stick to above principles. So instead researching on all just use one that is already available and proven to be successful.

Q: We are a Start-up, we are inexperienced in Agile methodologies, we don’t have additional resources (Agile Lead / Scrum Master) to help drive our development. So how do we start being Agile team?

A: It’s simple, you do not need expertise in Agile practices. You just need enough knowledge about agile practices and software development.


Scrum: Scrum is an iterative and incremental agile software development framework for managing product development. It is a flexible, holistic product development strategy where development team works as a unit to reach a common goal. The key principle of Scrum is – It allows the customers to change their requirements. Working on goals rather than entire product helps achieve this quite effectively.

This also ensures that customer gets what they want and also prevents rework or change request efforts.


Kanban: Kanban is a method for managing “knowledge work” that balances demands for work with the available capacity for new work. Work items are visualized to give participants a view of progress and process, from task definition to customer delivery. Team members “pull” work as capacity permits, rather than work being “pushed” into the process when requested.

In software development, Kanban provides a visual process-management system which aids decision-making about what, when and how much to produce.

In short Kanban method shows the current work in progress, team’s capacity which allows everyone including customer to see current situation. It allows better planning and also prevents over committing.


Familiarise yourself with few agile terms

Backlog: Product requirements that are to be developed and delivered (Features, bug fixes, non-functional requirements etc)

Epics, Stories: Product backlogs are commonly written in Epic & story format. Epic represents requirements for one entire feature and stories are smaller sub features of which are part of Epics.

Sprints, Iterations: Sprint is timeboxed effort that is restricted to a specific duration (one week, two weeks). Sprints are repetitive hence iterations are commonly referred as sprints.

Hope, you’ve brushed up your understanding of Agile today. In the next article I will go in detail about my experience of implementing Agile in Startup environment.

The IT Services Landscape of Today

The IT Services Landscape of Today

Case studies, Updates

With the emergence and growth of freelancing websites (like upwork, freelancer, guru) the IT services business has changed drastically. Smaller IT companies have mushroomed across the developing world. They cater to projects from the developed world (US, Europe, Australia) that were earlier inaccessible.

These changes have brought new challenges for everyone.

For clients:

  • Finding the right outsourcing partners
  • Developing skills to effectively manage distant teams
  • Gaining productivity despite time-zone differences
  • Assimilating members from different cultures without meeting each other

For IT companies:

  • Increased competition
  • Working on market adjusted rates
  • Team members turn into competition because of very low entry barriers in the business
  • Continuous upskilling of team members and associated costs

Along with the above challenges, there are disruptive forces at play:

  • Technological updations
  • Automation of tasks that were fetching handsome revenues till now
  • Cyber Security

So how should a typical IT services company survive amid all the chaos ?

Gyrix IT Services

With our experience of building a successful and scalable IT Services Company at Gyrix, we have gained few insights to handle these challenges. The insights are divided in three categories:

  • Client Front
  • Team Front
  • Market Front



Client Front


  • Retention is preferable than Acquisition: We made genuine attempts to retain our clients for the maximum time possible. Some of our clients are continuing with us for more than 3 years now. It gives the company stability, the team members develop functional expertise, payments are never a worry and the rapport can be utilized for expanding the engagement.
  • Up-skill team members for client needs: We faced challenges in meeting all the technological needs of our long term clients. It is better to develop the new skills in-house, rather than losing the opportunity to an outside entity. It gives bandwidth to learn under protected environment (with lesser risks). Sometimes the clients are willing to bear the cost for the team member to learn new technology.
  • Deliver value while sometimes bearing the cost: Services is a test-match that never ends. An inning is always followed by another. The performances are bound to vary, some clients would be very happy, some may not. But if the goal of delivering “Value” is clear, life becomes easy. An IT services company Sometimes should be ready to bear Cost while delivering Value Always.



Team Front


  • Smart is better than average: For longevity of the company, it is better to hire smart people people at higher costs rather than below-average people at lower costs.
  • Up-skilling is for the company not for the individual: Setting aside a budget to incentivize team members to do global certifications, should be considered a business cost.
  • Shuffle team at regular intervals to reduce dependency: It may be an enticing option to allow a stable team to continue working for a long term client, but making changes below the threshold of disruption is always better.
  • Test the bench capabilities: Team members not allocated to projects should be tested regularly by shadowing to live projects. It keeps the morale high and trains them free of cost.

Based on our discussions with peers in the IT world, we found many companies are following most of the above learnings.



However, the one aspect where many IT companies (especially the smaller ones) lack is the Market Front.

Market Front


  • Tend to make convenient assumptions
  • Work on their own strengths rather than the demand in the market
  • Allocate disproportionate resources for unnecessary technologies
  • Bet on “emerging” technologies prematurely
  • Assume that all the technologies are relevant to all the geographies. E.g. The list of technologies more in demand in Australia may not exactly match with US.

We had realized the importance of understanding the Market Front earlier in our journey. Hence we developed skills to analyze the Freelancing market with the objective to:

  1. Carefully observe technological trends
  2. Understand market demands
  3. Unearth geographical patterns

We performed a detailed activity over several week, fetched information from some of the freelancing websites, applied analytical tools to sift through the huge amount of data and drew conclusions based on the results. When we had solid conclusions in front of us, we tweaked our sales and delivery strategy to enhance our potential of growth.



Update: We’ve published the article on Freelancing Market Trends across Geographies !

Saying Goodbye to 2016 – An Entrepreneur’s take

Culture, Entrepreneurship, Updates

2016 is being widely labelled as the most disappointing year in recent memory (avoiding extreme terms for the sake of professionalism). The reasons fall heavily across the spectrum: From the geopolitical events, to corporate sluggishness, to unfortunate turn of events and the list goes on and on….

But how was the year for a typical Indian Entrepreneur like me ?

Indian Entrepreneur

Overall it was a difficult year to say the least:

  • The global uncertainties ensured that we were on our toes for the major part of the year
  • The wide fluctuations of growth prospects from extremely positive to utterly depressing gave mixed signals to everyone around us
  • The learnings, un-learnings and re-learnings were steep and didn’t provide us a minute of respite from challenging the status-quo

So what is this all about:


  • We started 2016 on a very positive note backed by a 100% year on year growth for our company. The team was all set and promising new members were joining the team almost every month. We were falling short of operating space (a difficult but good problem to have), so we expanded our office space
  • The biggest coup of the year was the strategic tie-up with a company in Australia. This helped us to have a physical presence in a developed market. We were able to reach more clients and engage on interesting projects
  • This relationship grew stronger over time and we also had an offshore visit from the Australian partner. Many things were brainstormed during this visit and a mid-term roadmap was chalked out. The team was excited by the interaction with an onsite partner and the new perspectives that they received
  • The projects were pouring in and we were experimenting with new technologies. The formula that we had developed for the last 3 years was working well

What could go wrong, you’d say?

As the year progressed on, we faced some headwinds:



  • Stressed projects: A couple of projects were proving to be troublesome, we focused our energies on them, took some tough decisions and ensured that the clients are happy with our delivery. After numerous long nights and weekends in office, the projects stabilized. These experiences gave us good insights on our strengths and improvement areas, which we gradually worked on
  • Few unexpected exits: We were largely dependent on the hardworking and dedicated team we had meticulously built over the last 3+ years. Some of the senior members were really showing promise of taking additional responsibilities. But at the same time, they too had to progress in their careers and hence it was with heavy heart that we had to say goodbye to Arpita, Ankur, Bhaskar. We parted ways on a positive note and are still very much in touch
  • Global uncertainties: We started facing hurdles in acquiring projects that should have been a cakewalk a year back. This lead to a sluggish period for operations, so we needed to beef up our sales team to overcome the challenges. We hired a dedicated HR and she helped us to streamline our hiring processes
  • Unprofessional prospects: The most disappointing phase was when we offered a senior sales guy a better package than his expectations, agreed to wait for his 2 months notice period – to be told a day before his joining that he has decided to continue in his current company because he got a hike over the package that we had offered. The issue here was not that he rescinded on his promise to join us, but the time and opportunities wasted in this process. This proved to be a real learning for us and we corrected our hiring process to handle such eventualities
  • Unprofessional member: Have tried to explain it here
  • Few tough decisions: “As an Entrepreneur the toughest decisions of your life, will definitely be related to the Human Resources”. Wrong hires, Engagements stretched beyond their life, Missed hires – are the decisions that you’ll always regret and pay a heavy price for

We too had to take such decisions:

  • A few people were asked to pursue their careers elsewhere. We tried our best to take the most humane approach possible. We gave sufficient indications and opportunity to make corrections, when that did not work we gave all the support in terms of documentations, referrals and monetary support to help in the transition. Some took it professionally, some got emotional. We publicly apologize if anyone feels that we made the wrong decision OR if there were lacks from our side to handle the situation. We are sure, in the long term they will realize that the decision was in their own interest and ultimately helped in pursuing their careers in a more suitable company
  • A prolonged Engagement: We were having a difficult problem with 1 particular team member. Extremely talented, technically superior, good communication skills but a complete mismatch for our Culture. We tried to counsel this team member to smoothen the edges and not create disturbances in our environment. We gave him opportunity on the most sought after projects, gave him unlimited access to office resources to enhance his skills, provided enough chances but still the nagging problem of cultural misfit persisted. It was after hectic discussions and debating tough choices that we decided to ask the member to leave

All along the while, Gyrixians were working hard and partying harder. We had numerous events for Self Improvement,  Winning Documentary Contest, Supporting Social Causes, Foundation Day, Awards, Long Trips, Short Trips, Birthdays, Festive celebrations, Games, Masti etc.

With this, we have reached the climax of the year and you are wondering that I’ve not yet touched upon Brexit and Trump, but there is a particular reason to it. No one can predict how these two events will unfold.

  1. Brexit: Might be bad for the world in general but might be a blessing for Indian IT companies, if the Indian government is able to leverage the situation to our advantage.
  2. Trump: What can I say more that’s not said already? With my limited understanding of Economics and International policy, if he implements all the things he says, the world is heading towards bigger trouble in the next 4 years. For Indian IT companies there are mixed signals. He may hinder IT outsourcing and H1-B, at the same time he might be more favorable towards India vis-a-vis its competitors. So no one knows what lies in store for the Indian IT Industry.

So what is our outlook for the year 2017 ?

“Extreme uncertainty in one variable demands relative stability in others”

With the year closing on uncertain terms, it is better to adjust our plans prudently. We are hopeful that 2017 will be more cheerful and will allow us to pursue our goals without many external considerations. We have ambitious goals and new initiatives to unveil. As always, we are confident that our super dynamic team will be able to pull off any challenge we throw at them.

We thank our team, mentors, friends, well wishers, support network and family for helping us achieve our goals this year. Here’s to more Growth and Entrepreneurial dynamism in the coming Year !!!

We wish everyone a Great Year Ahead !

Happy New Year