This year has truly managed to surprise all of us. The situation is forcing us to react and make changes quickly. That is why digitalisation, too, is progressing in leaps and bounds. These times demonstrate the need to move even faster and keep the society going, despite the crisis.
For our customers, this has meant changes in their plans and adopting new practices quickly. Even the forms of work are changing radically. While teleworking comes naturally to many people, others have been taken off guard by the situation. However, we have all been pleasantly surprised by how amazingly well our customers have adapted and projects have moved forward. Let’s hope that the bold reshaping of organisations and digital services will continue.
Enabling and securing operations and services has become a key theme of the coronavirus era. Many services remain dependent on people’s physical presence, and work is often tied to a certain place. Out of necessity, problems are being solved innovatively and agilely. Many issues that seemed impossible in the past have been made to succeed from the practical, cultural, and technological perspectives. While several solutions now in place meet long-term needs, others are temporary. And we are shaping improved, more permanent solutions for such cases. Many issues are still unresolved, however, the aim is to build a digital society that keeps going even if we encounter another crisis like the current one.
We succeed when our customers succeed
Our job is to help our customers build digital change. We succeed when our customers succeed and we can see digital services working in people’s everyday lives. Alongside our long-term partners, we have been helping to build Finland’s digital foundation. Some of our major projects include comprehensive renewal of employment services and advanced digital services for early childhood education and teaching.
In early September, we will bolster our quality assurance and test automation expertise, when Qentinel becomes part of Gofore. This is a complementary piece for our service range: we can now proudly confirm that we can provide customers with a broader set of world-class expertise and more comprehensive digitalisation services. Silver Planet’s consulting services will also be more integrated with Gofore’s service range: together, we make one of the most effective advisory consultants on the digitalisation of society in Finland and, hopefully, in time to come, internationally.
Impact and relevance are the starting points
This year has largely been shaped by efforts to maintain basic activities, but it’s been great to see how sustainable development and social responsibility have become a more prominent part of our customers’ projects and our services. During the year, we have helped to develop a solution for reducing phosphorus levels in the Archipelago Sea and have been working together with customers to solve problems associated with the coronavirus, from cleaning respirators to developing remote collaboration.
At Gofore, we believe that great things will be achieved with the aid of technology. We regard relevance and impact as key drivers for our projects. Together with our customers, we will continue working towards a better digital world — flexibly and agilely, while adapting to the situation.
Read also my blog post: From forced change to a positive outcome
A good definition of a software architect is hard to come by. Our own website says the following:
As a software architect, you will have years of experience in the software industry and you are comfortable with many technologies and programming languages. You like to take responsibility and are able to help both customers and your colleagues to improve their performance. We value in particular your vision, good interaction skills, and team working and problem-solving skills. As a software architect, you will have a chance to design and manage nationally significant software projects, meaning that previous coaching and sparring experiences will come in useful.
Let’s break this down:
- Years of experience in the software industry
- Comfortable with many technologies and programming languages
- Take responsibility
- Help both customers and colleagues to improve their performance
- Good interaction skills
- Team working skills
- Problem-solving skills
- Coaching and sparring experience is useful
What Does a Software Architect Do?
From our website: “As a software architect, you will have a chance to design and manage nationally significant software projects”
The architect designs architectures, of course. But not alone, this is done with the team and the customer. The architect needs to know the newest tech, but also has to be a bit conservative. They also need to put the architecture into practice and support the team in implementing it.
Supporting the team and mentoring team members is an important aspect of the role. Sometimes the architect can even be kind of tech support for the team. As a scrum master, the software architect can be seen as a servant leader role.
One view of software architects work can be found at The Path to Becoming a Software Architect:
- Identifying the stakeholders on the project.
- Identifying business requirements and requirements of the stakeholders on the project.
- Designing the entire system based on the received requirements.
- Choosing the system architecture and each component of this system at a high level.
- Choosing the technologies for the implementation of each component and connections between the parts.
- Architectural review. Yes, yes, it exists.
- Writing project documentation and support it.
- Creating unified development standards in the company.
- Controlling the architecture during the next iteration of the system release.
We do not agree on all these points, especially the ones that over-emphasize the role of a software architect as an authority of some kind. Let’s dig deeper into what it might mean to be a software architect at our company.
Skills and Characteristics of a Software Architect
It is apparent that a software architect should have very broad technical skills. The often-used concept of T-shaped skillset applies here very well. In the consulting business the horizontal bar, i.e. “the ability to collaborate across disciplines with experts in other areas and to apply knowledge in areas of expertise other than one’s own” is especially important.
Communication skills are key to a software architect’s profile. The person should be open to talking about the design decisions an able to present designs. They should also be open to suggestions from team members and stakeholders alike. An architect should be able to give presentations and talks comfortably. They should also be able to ask questions, especially the most important one: “Why?”
An architect should also have leadership skills, and lead from the front, by example.
Mentoring is an important part of an architect’s skillset, and also their mindset. They should be ready, willing, and able to guide more junior colleagues, and also the client if needed.
Understanding of customers’ business is essential, as well as our own. The architect should have experience from several business domains. They should also be able to identify business opportunities for Gofore.
The architect is a holistic thinker who sees the big picture. They also need to deal with many different people, so social skills and emotional intelligence are important characteristics.
Software Architects at Gofore
Currently, we have eighteen software architects at Gofore. Tampere has nine, Helsinki five, Jyväskylä two, Turku one and Estonia one.
The work experience of our software architects is between 10 and 30 years, the average being 18 years.
Most of our software architects are Java/Nodejs/.NET full-stack developers with either React or Angular in the frontend. We also have a couple of software architects focused on mobile development, with or without backend support. Many of our software architects are also highly skilled in DevOps/Cloud and/or agile practices. Also, a couple reports integrations as a key skill.
At Gofore, all developers, including software architects, are consultants above all. The roles of, say, a senior software developer and a software architect are fluid. Both work in a project as team members and take part in the design and development activities. What differentiates software architects from e.g. senior software developers should not be purely (if at all) the technical skills, but rather things like communication and leadership skills.
“The role is pretty misunderstood inside the company. It is not a Super Coder and natural development after being senior dev for some time but people think that way.
The skillset is different and bigger companies usually have other routes after senior dev. A software architect is just one of the routes.”
How Do I Become a Software Architect?
On the surface the answer to “How do I become one?” is simple. You start doing “architect things” and after a while, you can say that you are an architect. Currently, we don’t have any explicit development paths for developer roles, but this post is a small step towards one. Still, here are some useful tips:
- Learn to identify and communicate with stakeholders
- Learn about documenting software architectures
- Learn about architectural patterns and styles
- Broaden your technical horizons
- You don’t have to go deep, but preferably have a good understanding of several technologies and stacks. Read a lot.
- Learn and practice what it means to be a servant leader
Big thanks to the following people for contributing to this work!
If you want to hear and talk more about this topic, send us a networking request!
Life-long learning is self-evident: In order to evolve and advance oneself, we need to adapt new knowledge constantly and learn how to utilize it in different contexts. However, the ways and methods of learning vary during the course of life.
How does learning happen when we are at work?
As children we start by exploring and testing the world, mimicking others. During our years of school, we fill ourselves up with information by reading and listening to lectures, trying to get a good overview of different subjects and a wholesome general education. In our work-life we then test the knowledge we have gained by studying – is it applicable in the real world? From which studies do I benefit the most at work, if any?
But the question that has come to my mind is: how does learning happen when we are at work?
Often learning at work is subconscious: we might not set a goal for learning, but continuously pick up new knowledge, ideas and methods from our peers and shape our own ways of working.
Our study system still rewards for the degrees we hold as opposed to the know-how we gain. So usually when we need to learn something, we often consider whether there is some type of course that can be taken.
Gofore mentoring: a new type of learning experience
When I first came across mentoring at Gofore, I was eager to jump at the occasion. We have such a highly skilled set of experts from different backgrounds and disciplines. I knew that whatever topic I would choose, a suitable match could be found from our pool of mentors. I also thought it would be a new type of learning experience for me. But I had no idea how many questions it would open in the end.
I wrote down some of the best things I learned through mentoring:
- You learn things you cannot read from books. You learn from other people’s experiences. I have learned that stories and examples are a powerful way to get a point across.
- A great mentor does not tell you the right answers. They ask you the right questions and make you discover the answers for yourself.
- The process itself can grow organically. Even though there is a goal in mind, the route can vary depending on the conversation. In addition, it helps you grow as a person.
- It is a chance for serious self-reflection. How have I done things before and how would I take on the challenges now if I had another opportunity? Am I on the path that I want to be?
The relationship with a mentor can grow to be a life-long friendship
One of the biggest revelations has been that despite a means for life-long learning, the relationship with a mentor can grow to be a life-long friendship. The relationship that we have been able to build has given me the strength to ask about anything – work, life, and beyond – and get full support and great discussions regardless of the topic. On top of that, I learned that I would really like to be a mentor to others as well and help them find new paths in life.
Goforeans participated for the first time ever to our own official mentoring programme last spring. ‘Official’ meaning that mentoring at Gofore has been rather unofficial and it has usually taken its form in project teams or with two colleagues talking casually, yet repeatedly, about their challenges at work.
Even though unofficial mentoring continues to be the most important form of mentoring in our company, we know that we also need structures and support. Participants gathered their thoughts and lessons learned on our blog. Get inspired!
Reinventing Organizations by Frederic Lalouxin represents different organization types or levels. The book has been criticized being non-scientific and even dangerous. In management that is often a sign of something new and powerful. A new ways of thinking. I’ve written about Teal in my blogbuster Scrum is Dead article, where I found similarities between Team of Teams by McChrystal, Holacracy by Robertson and Teal. All of them encourage to organize modern knowledge work similar ways.
Corporate Life Span
Aswath Damodaran gave an incredible presentation in the Nordic Business Forum 2018. Yes the same event where the founder of Skype Niklas Zennström interviewed Barack Obama. Obama ❤️. Damodaran has a theory that corporation should change it management structures and leadership style throughout its life span. Startup seeks for idea and funding. Growth company acts like a teenager trying all sort of stupid. While the corporation matures, it starts to seek efficiency and predictability. And finally a retiree corporation will be either split and ramped down or kicked back into life by the means of disruption. In tech industry the speed of life is much faster than in a traditional area. One may say that tech ages in dog years. It seems an obvious idea, that a corporate must be run differently depending on its stage. Especially while it is growing. But how often does the mature corporate settle for it slow decline, while they should instead spin off new disruptive business platforms.
Yes, you know me. I’m a cynefin fanboy. Cynefin is a decision making and sense-making tool that emphasizes understanding the operational environment. The framework has five stages. Stages on left are nonlinear. There is no causality between cause and effect. Cause and effect can only be deduced in retrospect, and there are no right answers. In these domains you need strong leadership and daring. Stages on right are linear. You can predict the cause-effect causality. These stages require management and optimization. I will probably abuse Cynefin crudely while presenting it alongside static corporate structures. However, I feel that Cynefin helps to understand features and needs presented by different organizational stages.
The task of an organization structure is to serve a strategy. Strategy is a plan how to succeed in a certain operational environment. Success is often defined in comparison to competitors. If a company finds a totally new business area it is called a blue ocean strategy. A game without competition.
A bureaucratic, functional line organization succeeds great in a simple environment. Divisional unit structure and management by objectives (MBO) works in a more complicated but still linear environment. While MBO aims to achieve higher performance, Balanced Scorecard process sets objectives in respect of not only financial data but also customer satisfaction and employee development. A matrix type project and process organization structure offers more flexibility while working in a more complex domain. Cross-functional projects will be constantly started, which reshapes the organization constantly. In a truly complex domain the most flexibility and fit for purpose can be achieved by low organization models like team organization or network organization. While corporation grows older, its management also matures. Mature managers seek for command and control, which means the corporation structure generally travels from right to left in this corporation structure image.
Laloux divides types of structuring and leading organizations into five boxes.
- The most primitive and impulsive organizations where authority is shared by power top-down and strong division of labor is followed. RED
- Hierarchical organization with strong processes and formal roles. AMBER
- Achievement, object and result oriented organizations emphasizing accountability and meritocracy. ORANGE
- Value-driven organizations with culture and empowerment centric ways of working. GREEN
- Self-organizing evolutionary organizations. TEAL.
Laloux makes is sound easy to run an evolutionary, constantly changing and self-organizing corporation. That is far from truth. Both, the mature work force and the mature managers seek for stability. So called teal organization is a fit for purpose for a young and enthusiastic growth company. But when the company evolves it grows old.
Combination of Cynefin, Teal and Organization Structures
When playing around with domains, organization structures and leadership types one starts to find similarities. We are talking about same things from different viewpoints. Maturity brings in optimization and to be able to optimize one needs to create clear, hierarchical processes. Innovative growth company needs flexibility and constant flow. This can be achieved with modern, low organizational models.
How to Run a Corporate 101
Once you find similarities between different theories it is rather straightforward to create a synthesis of how to run things in different domains and in different stages of corporate lifespan.
Management theories and frameworks are tools. Tools are useful when used for the right purpose. Different people may invent the same tool a bit differently. It does not matter what you call the tool, as long as it is fit for purpose. As a manager you should use 80 % of your time for thinking “how to do the right things”. The structures and processes, “how to do things right” will evolve spontaneously, while you just concentrate on the matters that matter the most.
In this blog series I’ll tell what is high performance team, what is benefit for people and business of them, what is the most important factor of high performing team and how to build them with detailed instructions.
In Part 3 you find instructions how to increase team performance even more with defining performance standards and how to achieve full team commitment to common goal and results.
After you have deal with Absence Of Trust (as instructed in Part 2) you will find it easier to increase team performance even further with these methods.
Fear of Conflict, Level 2
When there is no trust inside the team, constructive and ideological conflicts are being avoid. Instead artificial harmony is preserved. Constructive conflict means conflict with results. Good conflict doesn’t include politics, insults or personal attacks. What are included in constructive is passionate and impassioned debate about ideas. Good conflict doesn’t mean you have to won debate, it means listening to other people opinions and considering their point of views.
Good teams don’t avoid conflicts. They know that difficult and hard things must be handled and then move on. They admit their mistakes, weakness and worries without fear of revenge.
When people doesn’t share their feelings and don’t feel like they are being heard they also don’t want to participate in making decisions.
Politics means that people chose their words according to what listeners wan’t to hear or react, instead saying what they really think about the matter. – Lencioni
Fear of Conflict causes:
- Artificial harmony
- Boring meetings
- Avoiding of difficult topics
- Team members don’t participate in decision making
When conflict are not avoided:
- Meetings become interesting
- Every team member will share their opinions
- Real problems are solved quickly
- Politics are minimized
- Critical topics are discussed first
How to overcome fear of conflict?
First, team must have reached mutual trust (psychological safety, Level 1). Second, you must tell people that conflicts are for good! People must be aware of benefits of constructive conflicts so they can be effective. Sometimes you can even pursuit people to bring up difficult matters for discussion (feed the conflict). It is beneficial to learn to identify artificial harmony.
How to build constructive conflict:
- When you are annoyed by a team mate and hoping that he wouldn’t do something again. Change complain to require (from negative to positive) and tell him what you’d like him to do next time in similar situation instead of complaining about something. Change might seem minor but there is huge different in tone of voice. This lessens frustration and helps to build constructive conflict.
- Real time reminder of need of conflict:
- When team is debating about something in constructive way some people use to withdraw from conflict when tone of discussion exceeds the limits of comfort zone. This is the time when you must remind people that conflicts are for good and encourage them to continue.
Lack Of Commitment, Level 3
Need of consensus and security prevents decision making and commitment which leads to ambiguity about what has been decided and which actions team needs to start doing. Effective teams make sure that everyone’s opinion has been heard and considered. This creates acceptance for any decision that team decides to make.
“Disagree and commit” team can debate about things and disagree but still it is possible for everyone to fully commit to decision. It is better to listen everyone’s opinion and commit to decision even there are no certainty about result than change decision back and forth. When everyone’s opinion are heard there will be no politics. If people feel that they are not heard and if decision turn out to be wrong it will raise “I told you so” comments.
Lack of commitment causes:
- Ambiguity about team direction and priorities
- False feeling about progress and commitment
- More uncertainty and fear of failure
- Possibilities are narrowed down due to too much analyzing
When teams are committed:
- Team direction and priorities are clear
- Whole team has common goal
- Team develops ability to learn from mistakes
- Go forward without hesitation
- Are able to change direction without hesitation
How to reach commitment?
- Setting deadlines for making decision and respecting it makes sure that teams stays in topic and disagreements are handled before they grow too big. When team “forces” itself to make decision after short discussion and analysis they usually understand that quality of decision was better what they expected and that decision would’t have been very much different if more time would have been spent on it.
- Think about the worst possible scenario (Worst Case Scenario)
- By figuring out the worst possible scenario and effect of decision helps to understand that the price of wrong decision is bearable and decision is better that no decision.
- Commitment Clarification
- 5 minutes before the end of meeting facilitator should ask question “What exactly have we decided today?” By being accurate about what has been decided team is able to identify discrepancies before decision is made.
- Commitment to the main principles
- Team must commit to meeting schedules, open communication and accepted behavior. Teams must commit also to other company wide principles such as meaning, purpose, mission, strategy and goal.
Avoidance Of Accountability, Level 4
Fear of stepping out of personal comfort zone prevents team members to require accountability from other team members. Requiring accountability from others demands that team can commit (Level 3) to common goals or accountability cannot be required. When clear goals can be defined accountability can be also required. Team members must be able to bring out behavior or performance which can hinder team. In fact avoidance of requiring of accountability because of fear of stepping out of comfort zone leads to performance declining and that leads to grudge between team members.
Avoidance of Accountability causes:
- Creates grudge between team members because of different performance standards
- Encourage mediocrity
- Team misses deadlines and doesn’t finish what is promised
- Leader of the team is usually seen only one responsible of high discipline
When team takes responsibility:
- Members with low performance feels natural pressure to improve performance
- Potential issues are quickly identified questioning solutions made by others without hesitation
- Removes heavy performance tracking
How to create culture of accountability?
Enemy of accountability is ambiguity. Before you can set expectations clear goals and standards must be known. Setting team goals and some rewards might also help. Team members bring out potential issues more easily when goal is common for whole team.
Team Effectiveness (1 & 2)
Purpose of team effectiveness exercises are to improve accountability by bringing up expectations of other team members and also made a promise about your own performance standards.
1 (Easy, Low or moderate psychological safety. Suitable for new teams)
Instructions on Miro
2 (Advanced, requires high psychological safety. For teams that has been working together for a longer time > 1 year)
Purpose of this exercise is to make possible for team members to give accurate, direct and functional feedback to each other about how individual behavior can affect to team performance.
- Every team member answers to following questions about all other team members:
- What is that person’s single most important behavioral quality that contributes to the strength
- of the team? (That is, their strength.)
- What is that person’s single most important behavioral quality that detracts from the strength of the team? (That is, their weakness or problematic behavior.)
(Note: Any virtual white board tool is suitable for this. Example Google Jamboard. Create own page for every participant.)
When team performance standards are created there is usually decline in performance. But it happens only because it takes time to get familiar with new way of working and eventually team performance will reach higher level than originally.
Inattention to Results, Level 5
Pursuit of personal goals and status crumbles focus on teams collective success. Without accountability people starts to reach for personal goals at the cost of team goals. In sport terms player is satisfied in three personal goals even if team loses the game. For many teams setting clear goals is very challenging.
Goals which team must reach must be made so clear that no one doesn’t even consider doing something just to improve personal status or ego. Because it would inevitably prevent team from reaching it goals. And then everyone would lose. – Lencioni
Team which doesn’t focus on results:
- Don’t grow
- Seldom beats competitors
- Loses goal-oriented members
- Encourages to reach for personal goals
- Is easily disturbed
Team which does focus on results:
- Goal-oriented people stays on team
- Individualistic behavior is minimized
- Wins or loses as a team
- Benefits from individuals who set aside personal goals in favor of team common goals
- Avoids distraction
How to get teams to focus on results?
- Make profit target (or any other goal) public
- Teams who make their goal public will more likely to work for reaching the goal
- Recognition and rewarding based on result
- Bonuses can be tied to results. Although result must not be the only factor of bonus. Economical factors are usually not good way to be the only behavior affecting motivator. Anyway if bonus (full) are given for good work without the expected results, which team was committed, might give wrong feeling about the importance of results.
Most teams gets huge improvement in their performance after they have deal with Absence Of Trust. But once the foundation and momentum of improving team performance is created it is important to use it with methods.
What’s next? High Performance Teams is one step of finding Flow state. In order to reach Flow state and self-steering psychological basic needs (team or individual) must be reached. Psychological basic needs are relatedness, mastery, purpose and autonomy.
Check Gofore’s blog frequently as I will be writing more blogs about how to reach flow state with strenghtening psychological basic needs. Which psychological basic need is the most important from your point of view in order to reach flow state and how have you reached it within a team or individual level?
Technical Project Manager (Scrum Master, Agile Coach)
Gaining customer understanding and the utilisation of information in decision-making have become one of the success factors for companies and organisations. Without customer understanding, there is no genuine customer orientation.
Customer-oriented companies are changing more rapidly than before on organisational, business models and service levels. Previously, companies implemented their strategy more clearly. In today’s organisations strategy may be a series of experiments aimed at seeking the right direction for the company.
In the world of the platform economy, the vitality of many companies depends upon systemic symbiosis. To understand the customer, we therefore need to also understand the complexity that surrounds the customer.
To get the most out of customer understanding we should focus on:
1. Decentralised management requires extensive customer understanding
New ways of thinking in managing and organising an organisation include, for example, decentralised management, continuous accumulation of customer understanding, and the application of customer understanding to multiple levels of the organisation.
These developments have shaped the way to make decisions. Previously, so-called leadership made the most of the major decisions. Nowadays many organisations give decision-making power to all levels of the organisation. Customer understanding needs to reach all these tens or hundreds of decision makers.
2. Rapid decision-making often requires complete customer understanding
The pace of change, the increased availability of information, the requirements of a global playing field, and new management models, have all been speeding up business decision-making. However, speeding up decision-making does not always mean better decisions. There is a need to accumulate customer understanding constantly so that it can be offered when we need quick support to decision making with an up-to-date customer understanding.
3. Service engagement challenges customer understanding
Recently in many industries, companies have increased their share of services in their business. In many cases products and services form an integrated solution for the customer. As the share of services grows, it is important to rethink the scope and way of collecting customer understanding.
Ways to get started
Accumulating and utilising customer understanding has become more challenging than before. Too often, corporate user surveys focus exclusively on the early stages of development projects and shed light on the world of customers from a limited perspective. A fragmented picture does not support good decision-making.
Precisely targeted studies require a more general picture of customers, their needs, and their operating environment. A customer-generated overview would be useful for the company’s daily decision-making. A solid basic understanding of customers delivers improved decisions, rather than simply throwing dice.
Sharing knowledge is also a challenge. Often, one half of the company does not know what the other half already knows about customers. The next objective can be to start maintaining combined analysis of customer data and studies. That serves as an up-to-date information source for various decision makers willing to make customer driven decisions.