Crossing the Feedback Chasm - a Conversation with Ken Finnigan
QCon San Francisco and Ken Finnigan's Background
- The QCon San Francisco conference is taking place from November 18th to 22nd, where engineers will share their experiences implementing innovations in real-world scenarios, and attendees can explore tracks like engineering productivity, programming languages, and generative AI (9s).
- The conference will feature senior software developers discussing emerging trends, and attendees can learn more about the conference at qconsf.com (32s).
- Ken Finnigan is a consultant and software engineer with over 25 years of experience working with enterprises worldwide (50s).
- He has presented at conferences like Code One, JavaOne, Red Hat Summit, and Devoxx UK, and is a founder and member of the Common House Foundation, which helps open-source projects become sustainable (1m0s).
- Ken has authored several books, including "Reactive Systems in Java", "Native Microservices with Coroutines and MicroProfile", and "Enterprise Java Microservices" (1m22s).
Ken's Journey to Enterprise Architect
- Ken was not formally trained as an architect, but rather progressed into the role over the years, starting as an engineer working on mainframes for IBM (2m43s).
- He has held different types of architect roles, including implementation-heavy architect for single products and Enterprise Architect for banks in the UK, where he reviewed plans and ensured alignment without writing code (3m7s).
- Ken's experience as an Enterprise Architect involved working with a large team of 50-60 architects, and while there was some pushback, the role was generally understood and respected (3m49s).
Challenges and Opportunities in Financial Services
- Financial services firms often have strict rules and regulations that can be frustrating to work with, especially when the industry is 5 to 10 years behind in technology (4m8s).
- Working in the financial services industry can be a good place to learn the ropes and gain experience, but it can also be challenging due to outdated technology (4m41s).
- Some financial services firms have had to adapt quickly to changes, such as moving to 24-hour day trading, which can be a significant challenge (5m13s).
- Bringing modern technology into a banking environment can be done carefully to minimize risk, but it often requires leadership that is forward-thinking (5m49s).
Challenges in the Medical Field and Software
- Working in the medical field and software can be high-pressure, as it involves people's lives and requires extremely careful testing to avoid serious consequences (6m15s).
- The medical field also faces challenges with rigidity, such as having to use outdated technology like fax software due to regulatory processes (7m10s).
The Feedback Chasm: Definition and Impact
- The concept of the "feedback chasm" is important in software development, as it refers to the gap between the development process and the feedback loop, and bridging this chasm is crucial for effective system building (7m41s).
- Acknowledging the feedback chasm is essential for developers, architects, and anyone involved in building systems, as it can impact the effectiveness of their work (8m11s).
- The "Feedback Chasm" refers to the gap between the feedback received from a current role or organization, which is focused on helping an individual grow within that organization, and the characteristics and traits required for future opportunities at different employers (8m52s).
- The feedback received in a current role is often focused on improving skills and taking steps up the career ladder within that organization, but it may not be relevant to the characteristics and traits required by other employers (9m11s).
- When looking for future opportunities, individuals may not receive feedback from the hiring process, especially in technical interviews, which can make it difficult to understand what they are missing and how to improve (10m19s).
- The lack of feedback can limit an individual's growth opportunities and make it challenging to land a role that requires different characteristics and traits than their current role (11m21s).
- The Feedback Chasm can also occur when trying to make a lateral transfer or explore a different opportunity within the same company, as the feedback received in the current role may not be applicable to the new role (12m6s).
- The Feedback Chasm can be particularly challenging for engineers, as it can narrow down their growth opportunities and make it difficult to find a company that is looking for similar characteristics and traits (11m17s).
- The lack of feedback can make it difficult for individuals to understand what they are missing and how to improve, which can lead to a sense of uncertainty and frustration (11m14s).
Navigating the Feedback Chasm: Challenges and Strategies
- When transitioning to a new role, such as a manager or product manager, it's often necessary to start from scratch and identify what skills or knowledge are missing to succeed in that role (12m35s).
- Some managers are supportive and want to see their team members grow and succeed, even if it means they might leave the company in the future, while others may be more focused on their own interests and less willing to help (13m8s).
- In a lateral move situation, the direct manager may not have much say in whether the move can happen, as it often requires approval from several layers up (13m58s).
- Effective feedback is important for growth and development, and it's not just about the content of the feedback, but also how it's delivered (14m33s).
- When delivering effective feedback, it's helpful to focus on specific areas for improvement, such as technical skills or communication, and to provide suggestions for how to address those gaps (15m22s).
- Feedback can be delivered in a way that is supportive and encouraging, such as by saying "these are things we think you need to work on, and we're able to help you work on them" for internal candidates, or "if you work on these things, we'd love to hear from you again" for external candidates (16m19s).
- The delivery of feedback can have a big impact on how it's received, and it's possible to deliver feedback in a way that is both honest and supportive (15m14s).
- Interviewers are often unprepared and do not clearly communicate what they are looking for in a candidate, which can put the candidate at a disadvantage and increase anxiety and stress levels (16m43s).
- Companies need to be clear about the type of interview and what the candidate can expect to avoid a mismatch and ensure useful feedback (17m55s).
- Sometimes, companies ask the wrong questions, confusing general ability, the ability to grow, and the ability to learn with knowing specific facts (18m34s).
- Knowing specific facts may be helpful in the short term, but it does not necessarily indicate a candidate's ability to grow and learn in the long term (19m5s).
- To narrow the feedback chasm, candidates can provide examples of times when they learned and grew in a project, demonstrating their ability to adapt and learn new skills (19m56s).
- Candidates should communicate their openness to feedback and their willingness to learn and grow, as this can help bridge the feedback chasm (20m38s).
- There are two ways to bridge the feedback chasm: the company can provide clearer expectations and feedback, and the candidate can communicate their ability to learn and grow (20m41s).
- Asking for feedback from HR personnel can also be an effective way to bridge the feedback chasm (20m56s).
- It is beneficial to ask for feedback at the end of an interview process, as it shows proactive interest in improvement and can provide valuable insights for future growth (21m0s).
- The person being interviewed should also be interviewing the company, as it is a two-way process, and asking questions can help bridge the gap between the interviewer and interviewee (21m20s).
- Typically, 5-10 minutes are allocated at the end of an interview for the interviewee to ask questions, but this can often be a missed opportunity to delve deeper into the company's expectations and culture (21m37s).
- Asking questions during a design or system design interview can turn the session into a two-way street, allowing for feedback and a better understanding of the company's needs and expectations (21m51s).
- Framing answers in a way that invites feedback and discussion can help create a more interactive and engaging interview experience (22m24s).
- One approach to creating a two-way interview is to present an open-ended problem and expect interaction and feedback from the interviewer, as this can provide valuable insights into the company's dynamics and expectations (22m45s).
- Interviews should not be a one-way street, and candidates should strive to make them more interactive, even if it can be challenging in certain situations (23m32s).
- Making an interview a two-way street can be more meaningful than just answering questions, and can provide valuable insights into whether the company is a good fit for the candidate (23m55s).
- Asking interesting and thought-provoking questions during an interview can help candidates better understand the company's culture and expectations, and can be a valuable tool in determining whether the company is a good fit (24m39s).
Seeking External Feedback and Mentorship
- One example of an interesting question to ask during an interview is "what didn't you know," as it can provide valuable insights into the company's challenges and expectations (24m46s).
- Asking a question like "What's something you wish you knew before joining this company?" can be an effective way to get honest feedback from someone, as it's not typically expected and they may not have a canned answer prepared (24m50s).
- When facing a "feedback chasm" in a job or job search, it can be helpful to look for feedback from other sources, such as a mentor outside the organization (25m44s).
- Having mentors outside the organization can provide valuable feedback and help bridge the "feedback chasm" (26m18s).
- Mentors can be found through various means, such as former colleagues, user groups, conferences, or online connections (26m24s).
- Sharing experiences with others who are going through similar situations can also be helpful in getting feedback and learning how to handle particular situations (26m36s).
- It's essential to avoid getting trapped in an "echo chamber" of feedback from one particular group and to seek out diverse perspectives (26m50s).
- Not getting trapped in one group's perspective can help prevent being limited by others' bad experiences and biases (27m9s).
- Everyone's experience is different, and just because one person had issues getting feedback or bridging the "feedback chasm" doesn't mean others will have the same experience (27m42s).
Networking and Building Relationships
- Networking and talking to people in various groups can provide valuable experiences and help with learning and growth, not just for finding jobs (27m58s).
- Attending conferences and meeting people can help with learning about new technologies and deciding what to learn next (28m40s).
- Networking without the immediate intention of getting a job can increase the odds of getting hired, as people don't feel used when they're approached with genuine interest in their work and experiences (29m34s).
- Building relationships and helping others without expecting an immediate payoff can lead to more opportunities and a stronger network (30m11s).
- Being a "giving" person, rather than a "taking" one, can pay dividends in the long run, and being helpful can lead to new opportunities (30m26s).
- Open-source communities are often driven by a spirit of giving and sharing, and contributing to these projects can be a way to get involved with organizations and build relationships with people who work on those projects (31m50s).
- Contributing to open-source projects can be a way to demonstrate one's skills and quality of work, and can potentially lead to job opportunities (32m14s).
- Encouraging feedback and open communication can help prevent problems from arising, and can be an important part of building strong relationships and networks (32m41s).
The Temporal Feedback Chasm and its Implications
- The concept of the "feedback chasm" refers to the gap between giving and receiving feedback, which can be both spatial and temporal, and can hinder growth and learning opportunities (32m54s).
- The temporal feedback chasm occurs when feedback is received too late to be applied, such as in annual performance reviews, making it difficult to remember past events and apply the feedback (33m14s).
- Feedback received in a timely manner is more valuable than feedback received in the future, with a "time value" similar to money, and companies should consider this when approaching feedback (33m47s).
- Viewing feedback as an investment with a potential return on investment (ROI) could change companies' attitudes towards it, making them more likely to prioritize and act on it (33m54s).
- Agile methodologies aim to solve the problem of delayed feedback, but may not be entirely successful in doing so, and may even create new problems (34m53s).
- The feedback chasm, whether internal or external, impacts individuals' opportunities for growth and learning, and consequently, companies' ability to improve (35m24s).
The Value of Feedback and its ROI
- Highlighting the ROI of feedback can help managers understand its value and importance, and can also emphasize the growing importance of soft skills in the engineering world (35m49s).
- Receiving feedback does not obligate individuals to act on it, but rather allows them to consider and choose whether to apply it, and being open to feedback is crucial for growth and learning (36m36s).
- The importance of explaining the value of a task to team members and interviewers can lead to a better class of people and opportunities for growth (36m44s).
The Joys and Challenges of Being an Architect
- The favorite part of being an architect is being involved in the early stages of a project, setting the direction of a product or technical strategy, and having a say in the direction of things (37m20s).
- As an architect, one is often involved in discussions around planning, strategy, and direction, allowing for some level of autonomy over where things are going (37m45s).
- The least favorite part of being an architect is the effort required to get a new initiative going, which can be time-consuming and require overcoming inertia to get everyone on board and obtain necessary buy-in from leadership (38m6s).
- This process can be particularly slow in organizations like financial institutions, where change can be difficult to implement (38m37s).
- An example of a slow process is a migration project that was planned 18 months to two years in advance, requiring multiple dry runs and testing to ensure a smooth transition (38m50s).
- Being an architect can be creatively, spiritually, or emotionally fulfilling, as it involves bringing new ideas and systems to life (39m46s).
- The process of creating something new can be rough, but it allows architects to use their brains and collaborate with others to create the best possible solution (40m10s).
- The biggest turn-off about being an architect is the large number of meetings that are typically required (40m27s).
- Working cross-functionally requires more meetings with different groups, but it's essential to keep these meetings short, with clear agendas, and end them once the main goal is achieved (40m40s).
Technology Preferences and Architect's Role
- Java is a favored programming language, having used it for 25-26 years, although other technologies like React are also being explored for mobile development (41m9s).
- Solving architecture challenges to optimize business use cases while making customers happy is enjoyable, but it can be difficult to achieve both goals simultaneously (41m42s).
- A common issue in architecture is when it takes away from coding, making it essential for architects to stay hands-on with code to understand the project and identify opportunities for simplification (42m17s).
- Losing intuition as an architect can be a problem, and it's crucial to stay involved in coding to maintain a deep understanding of the project (43m2s).
Alternative Career Paths and the Architect's Future
- If not an architect, alternative professions of interest include writing fiction or being a genealogist, as these roles involve storytelling and research, similar to writing software or technical books (43m24s).
- Eventually, there may come a point where slowing down and transitioning out of an architect role becomes desirable, as the position requires constant learning and being on top of the game (43m56s).
- With technology, it's challenging to dabble and stay up-to-date with everything, making it hard to step out and then expect to step back in and be current after a few years (44m39s).
Project Success and Team Satisfaction
- When a project is done, it's ideal to hear from clients that the project met all their goals, including those that were indirectly expressed (45m13s).
- From the team's perspective, it's essential to know that they learned, had fun, and would choose to work on the project again if given the choice (45m38s).
- Understanding how to bridge the feedback chasm is crucial for the long-term success of self-organization (46m5s).
- The conversation highlights the importance of considering the feedback chasm, which is often overlooked but vital for long-term success (45m57s).
- The discussion emphasizes the value of learning, enjoyment, and client satisfaction in project outcomes (45m41s).