Knowledge Management at 99XTechnology

When I started reading through lecture notes about the Framework for Knowledge Management, I couldn't find a better example but relating each concept to the place I went for my internship. 99XTechnology is a reputed IT company in Sri Lanka. They practice “Agile” and they are into Product Engineering.
It occurred to me that almost all the activities happening in this company conforms to Knowledge Management Framework. Following is a description of how I reflect it. 


Concept 01 - Selectivity

Selectivity is the quality of carefully choosing something as the best or the most suitable. In software Industry, choosing right customers is a vital task.
99XTechnology serves only for “ISV”, short for Independent Software Vendors. They are the people or companies that sell the products to their own customer base.
In comparison ISV and End-User customers, ISVs are always stable. They are easy to negotiate, and understandable. With ISV's recommendation they can easily reach out other ISVs and acquire them.
End-User customers want to get their jobs done as quickly as possible but relationship between them and the company is not as tight as with ISVs.  It is a good strategy they chose to serve Independent Software Vendors. I think that is one of their success factors.
99XTechnology applies selectivity not only to choose customers but also to recruit employees. Management board believes that people who perform well in academics are more consistent and trust-worthy.
For example if there are two students, one with low GPA and the other one with High GPA, it is intuitive that the student with high GPA consistently cares for his academic throughout his undergraduate period. So if he is safe to assume that if he is put to a project, he will drive it to success without giving up. As far as I’m concerned this is why they pay higher interest on people with high academic qualifications.


Concept 02 – Repurposability

Repurposability is the capability of being turned to another purpose. This comprises terms such as granularity, re-usability and enter-once-use-many. It is said that in order for knowledge to be useful, it must be small enough to recombine with other pieces of knowledge, yet large enough to be meaningful.
99XTechnology practices agile. They use “Scrum” software development methodology. In scrum, there is a concept of “Sprint” which is the duration of the iterative development process. This could differ from 1-2 weeks. The scrum team includes maximum of 7 people including scrum-master, product-owner and developers. Before starting a sprint they get-together and estimate the tasks pertaining to that sprint. For this task each person are given poker cards to pick a number for the estimating task depending on the difficulty of implementation. Then they compare each one of it.
Within this process they make sure, not to take tasks with high estimation for a sprint. They realize that task can be further divided to sub-tasks and only take manageable tasks within the sprint. Successful sprint means successful review at the end. If large magnitude tasks had been taken, developers might get stuck and there might not be anything to show for the customer at the end of sprint.
However within the sprint, if somebody seems stuck in his tasks, other members deliberately help him out.  So the whole team advances successfully. Thanks to scrum, there is always some executable at the end of each sprint. Testers can test it, Quality Assures can assure its quality and the customer can review.
Some of the modules developed by the developers are reused by company’s research team for further developments and improvement. They can start from where it is left off. No need to reinvent the wheel. Likewise, research team comes up with novel frameworks that can again be used in other company projects. 


Concept 03 - Interoperability

In computer field, interoperability means the ability to exchange and use information, usually in large heterogeneous networks. It generally means that systems should be interoperable without conflicts. This applies to Human Resource as well. They should be able perform multiple roles without affecting their main work role.
99XTechnology has a flat management structure. There is no so-called chain of command. Employees are self-driven. It is true that it has each employee has different position. There are Software Engineers, Senior Software Engineers, Tech-Leads, Technical Architects, and Technology Mangers etc… but it is purely based on the skills of the employee. If the employee is good enough, even his Software Engineer position can be promoted to Tech-Lead position.
Because of this nature, Employees are encouraged to take part in different tasks other beside their main development task. During my internship I have noticed that some Senior Software Engineers conduct interviews, they take part in University Relationship Development programs, they dedicate themselves in CSR activities, they organize meetups, and also conduct training sessions and many more…
Employees are praised by the extra activities that they engage apart from developing. This way, 99XTechnology utilize the employees’ hidden potentials for the benefits of themselves and the company.


Concept 04 - Individual Control and Ownership Defined

Each person has unique set of skills. Their knowledge varies. It is said that only Knowledge creation is and invisible activity that occurs in the human brain. Only when this becomes explicit with supporting artifacts can it be shared.
99XTechnology provides a great platform for sharing knowledge among colleagues and peers. Within their intranet, they provide a web application called “K-Exchange” short for Knowledge Exchange. Anyone can post anything related to technical problems, technical solutions, technical concerns, best practices guidelines as such… People can comment and like such posts. They can provide feedback to each other. Rather anonymous feedback is also facilitated. When users interact with the system by doing about activities, they will accumulate their personal reputation points. These points can be redeemed at auctions that is held time-to-time within premises. It is a quite effective way of sharing knowledge.
Apart from that most of the developers are active members of “StackOverflow” which is the most popular Q&A site for developers around the world. They keep their personal blogs up-to-date about the day to day technical challenges and solutions. That really helps for the novice developers who just joined with their project domains.
Besides, 99XTechnology reserve budget to hold monthly meetups that is open everyone. There are meetups such as “Colombo Selenium Meetup”, “Colombo PerfTest Meetup”, “Colombo Mobile Meetup” and etc… Most of the undergraduates and software engineers get benefited from the knowledge they transfer from these meetups.


Concept 05 – Openness

What I really appreciate at 99XTechnology is their culture. It is a friendly environment. We are open to talk to anyone within the company. We could even discuss problem with the CEO at any time.
There are no such boundaries. Everyone is treated equally. As I have previously mentioned, the non-hierarchical structure enables employees to be self-driven and work freely. It is wonderful to see, that no employee misuses the freedom they have. Instead they improve themselves and join hands to the success of the company.
To find the hidden potentials, people should be given freedom. Once they have an ideal environment they chase their dreams and find the satisfaction. This is good for the company by all means.
  




Comments

Popular posts from this blog

Dependency Injection in ASP.NET MVC 5 with StructureMap

Real-time web with Node.js & Socket.io

First Look at AngularJS 2.0