Architect Mentoring Program

The last five years has brought a lot of focus on architecture especially within the technology services industry. Knowledge of architecture is now a must in all areas of service delivery – from responding to a proposal to the day to day execution that is part of project delivery. The architect plays several important roles in the industry today as illustrated in the figure below:

image

Architects are in short supply

Technology services company face a serious shortage of skilled architects, technical expertise of the kind that is required is thinly distributed. Companies are seeking to mitigate this shortage either by hiring or by augmenting skills of existing and potential architects. Architecture and design however is neither process or delivery related work that can be put into a manual, instead it tends to be deeply involved work from a conceptual and technical perspective. At the same time, the architecture body of knowledge in itself has increased significantly leaving an architect with a lot more that must be assimilated. For instance there are domain specific architectures and standards, there are reference architectures at the platform level, there are process and security standards such as ITIL, there are architecture driven methodologies such as ATAM.

Doing architecture is in reality a problem solving exercise – it is not a methodology, or a set of algorithms. It is a craft which has to be learned on the job. There are many training programs on architecture – but to put it into practice, one needs to apply it in the actual field situation. Training programs can either provide a perspective on a particular area, or they are useful in imparting knowledge about a very specific technology, product or a methodology. But, problem solving is learned by apprenticeship. Architecture is best taught and learnt as part of a mentoring exercise.

This is where Canopus Consulting comes in. We are highly experienced architects who have designed complex systems for customers around the world in a variety of domains. We have built strong development teams and have been mentors for over 15 years now. We are at the same time teachers who have invested in the creation of a body of knowledge and teaching techniques.

The Architect Mentoring Program

 

We have a well defined program with clearly articulated goals and delivery methods that has been proven in practice. Mentoring is offered to both technology services and product engineering companies and is typically long term, with durations of for over a year. The program is characterized by the following:

  • We work with a group of people and work with them on a long term:

We use their day to day work as the field situation to train them to become effective architects.  The participants bring their own projects for review, for analysis and learning. The group is thus working with cases and examples that they and the rest of the organization can easily relate to and observe.

  • We focus on the group as well as on the individuals within the group:

As a group we seek to create an environment where the group bonds at an intellectual level. Instead of one architect struggling in one project; the group now acts as a place where problems can be discussed, and everyone learns from each other experience.

At an individual level each person is helped to work towards their own career and development objectives. The mentoring program identifies a career path for each participant, and works with them in realizing that goal. Some may want to remain very technical and work closely with programmers, where as some others may be interested in specializing in a particular technology/business domain, some may be good at quickly identifying the forest and look at the big picture – and put together a solution and articulate it very well in front of their clients. Others may be very good at creating best practices, improving the processes and so on.

  • We create a set of organizational assets via the program:

A body of knowledge, re-usable platforms, quality engineering tool sets for verification and validation of architecture at the architecture stage, tools and techniques for verification of NFRs, estimation methods and problem solving techniques. Eventually, the program aims to develop each participant into a mentor himself/herself.

  • We create architecture visibility within the organization:

We help develop a culture of architecture thinking and intellectual bonding within the organization via conducting organization wide architecture workshops, presentation of papers at multiple forums and so on.

Curriculum and areas of focus

We structure our program into a set of common or core topics that the whole group works on and then evolve a set of specialization areas that parts of the group focus on. This is illustrated in the figure below.

image

The core curriculum covers areas such as:

· Supportability as a key architectural driver

· Design for NFRs

· Design platforms

· Architecture driven requirements engineering

· Design for performance, scalability, availability and extensibility

· Data design and data engineering

· Component architecture and SOA

· Communicating architecture with different audiences

· Planning and estimation, first order measurements

Some of the areas of focus of the individual specializations are illustrated in the figure above. The areas of focus are fine tuned and prioritized based on inputs from the group and our own assessment of the knowledge available within the group and their work requirements.

Value Proposition

We develop much needed architecture expertise within organizations

We identify career paths for each participant and help them achieve their goals

We create an environment where architects work together to solve problems instead of struggling as individuals

We create a knowledge repository of techniques, libraries, quality engineering tools and problem solving methods

We aim to develop the participants to be mentors to their own teams