Continuous interaction and collaboration rather than fixed time and schedule meetings

Working over the years in the Information Technology industry I have learned that face to face interactions lead to success in delivery and innovation which are the important areas in this industry.

But this is the result of imperfect interactions from a distance. For this let us analyze what is a successful interaction:

  1. Successful interactions for good delivery and innovation are continuous in nature and not just fixed hours per week/day/month
  2. If we restrict ourselves to a very fixed schedule say every week or month we come with a very specific preset agenda and miss out on human emotions, behaviors, motivations and so on which also have a big role in success for delivery and innovation
  3. Face to face meetings add on top of the set agenda an aura of informal interactions around friendship, relationship, behaviors, emotions, motivation, what we like / dislike, etc.

To augment this from offshore for countries like USA & Europe and remove the disconnect better way would be to have continuous interaction.

Connect boardrooms, developer areas, testing team rooms, agile rooms, finance rooms, operations room via video conferencing and audio with a view of full team and area on live and continuous basis. Once you do that you remove the fixed agendas and schedules of meetings which cut out the soft side of human behavior, etc. which is only visible in a face to face conversation. This disconnect of fixed schedules and fixed time meetings can be overcome by continuous interactions. We already have continuous integration for delivery teams and AGILE as a model for delivery. Taking it to the next level would be continuous interaction between offshore and onsite.

Visualization

Visualization in the digital world is an important area often ignored by techies. Visualization in traditional sense of user interface / user experience / mobility for systems and applications has now long been considered an important area.

But another interesting area to look at in visualization would be internet and understanding universe both – yes I am linking both. With petabytes of data/information now on internet and machines with GBs of RAMs and Octa-core CPUs now common place there is an information overload. If you compare the information being generated every year by internet and computers it’s not something that probably a human being could go through in his/her life. Same is the case with the universe, every year we are finding new areas of unexplored universe with new galaxies, stars, planets, etc. An example: The Great Attractor

To understand and process so much information for a normal human brain at current capability does not seem possible (debatable but that’s my view point).

What we need is a little help from visualization and using something like a dimensional / visualization helmet of virtual reality type. Fighter pilots have helmet mounted displays and we need something similar that processes lot of information from internet and universe which could come from multiple dimensions say 5/6+ (more than four dimensions is difficult for us to understand: time, x, y and z axis, etc.)  and parses through petabytes / zetabytes of information and presents it based on normalization for  our senses.

Formula for Successful Innovation Driven Companies in IT industry

There are many formulas to build a successful company:
1. Passion
2. Great investors and board with good mentors
3. Great product
4. Niche skills and services
5. Great legacy
6. Recruit the best, train them, mentor them, give them good career growth, etc.
And so on

But one that I have observed and learnt is another one. We won’t go into the discussion about the earlier ones given above but let’s look at another way to build excellence.

Excellence and innovation is driven by freedom, creativity, knowledge, skill and right intervention by management with positive re-enforcement, promotion of good attitude and removing the bad apples at the right time.

One of the primary enablers for this is less internal friction and a culture to deliver excellence, promotion of passion to perform and learn without unnecessary hindrance.

One of the best ways to do this is to find people in your core teams to go into the non core functions over time willingly and on their own. These people can build a culture that appreciates the problems of the majority core function employees.

An example, if you over time promote in any Information Technology company your core development/product team members via training, education, etc. into Finance, HR, Project Management, Support, PMO, Legal, Sales and other departments you will build a company that appreciates the problems that the core function faces and they will help/enable them which in turn results in innovation and culture of synergy with excellence.

This is not the only formula out their to build a great company but one of the many ways. Only when we perform as one unit do we succeed most of the times, don’t we?

Architecture design

One mistake many make while building architecture for any application / system is to build the architecture using best/latest technology in isolation.

Architecture design has to be mapped to the use case and requirements.

Areas listed below and more should be considered while making design for the architecture:
1. NFR (Non functional requirements)
2. Security
3. Groups/roles/etc.
4. Integration
5. Use case
6. Information processing, etc.

All of the above and more should be considered upfront and consideration should not just be given for the best/latest technologies. Unless for example we consider how many users will use the system, which type of information exists, what are it’s updation rates, etc. who will access the system with what rights, what scalability is needed, how fast will the system change, what are the uptime requirements, etc. we can’t build the right system.

All of the above should be covered right from design and appropriately data should be partitioned, security design should be built, scalability should be thought of and issues like groups/roles/users, identity and access management should be mapped to the use case or the requirement.

Mobile & Sensors in IoT world

In this world of IOT, iBeacons, Eddystone, Mobiles with 3+ GB RAM, light/gesture control sensors, GPS, accelerometer, compass and quad/octa core processors with cameras an upgrade for all of this would be to have sensors like:
1. Temperature,
2. Movement/motion,
3. Smell,
4. Pollution, etc. onto the mobiles and then fuse them with IoT/sensor networks. This fusion is simple and easy using Mobile APPs.

Imagine we being stuck in a natural calamity like fire, earthquake, flood, etc. and if we have these sensors fused onto the mobile along with IoT and mobile networks + WiFi there could be a huge combination of information that can be provided to each person to and fro.

They could be part of a sensor network (ad-hoc over WiFi or 2G/3G/CDMA/4G and so on) and could participate in finding better outcomes in any troubling situation. Why I mention ad-hoc/WiFi network is incase of emergency if 2G/3G/4G/CDMA network goes down we can use ad-hoc/WiFi to build a small network which can fuse with IoT sensors and maybe get a temporary VSAT or other internet uplink which are now available on mobile vehicles as well (broadcasters, news channels, etc.).

World of mobility is just opening up for all of us. Information sharing would reach a new level with aim of saving lives. All this can be enabled at the end point via mobile APPs using Android SDK or Apple based APPs.