🌱 Dive into Learning-Rich Sundays with groCTO ⤵️
🎙️Product Thinking for Platform Teams | Geoffrey, Principal Product Engineering @Upvest
Join us on #Ep55 of the groCTO Originals podcast, & Learn from Geoffrey Teale, Principal Product Engineer at Upvest, about how to simplify workflows, prioritize developer needs, and set your platform teams up for success 🚀
Let’s hear it! 💬
How do you help your platform teams stay ahead? -Let us know!
Article of the Week ⭐
“Many developers fall into a pattern of heads-down coding, focusing solely on completing JIRA tickets and meeting technical requirements. It's how they were programmed... You should be more focused on technical excellence rather than looking at the user-centric side.
This mindset isn't their fault.
Breaking Free from Code Tunnel Vision: A CTO's Guide to Broader Thinking
You may know Matt Watson already as his insights have been one of the most popular that we’ve covered this year. In a recent conversation with his VP of Engineering, they discuss the pitfalls of remaining too tactical as an organization.
The root cause of this organizational thorn is a team that lacks the security or confidence to question ‘why?’ leaving them only to deal with the ‘what?’ and often ‘when?’.
In recent years these kinds of cultural issues have become exacerbated by remote work and asynchronous teams lacking mutual locality or synchronicity. Written mediums lend themselves much more easily to context-dumping rather than critical conversation.
Leaders’ Role to Better Products
If you are tasked with creating a login screen, don't just ask for the design. You can ask what kind of users will be logging in, do they need two-factor authentication?
Taking ownership is a key step to this. Don’t centralize information and reporting. Instead, funnel and delegate authority to the people who have the most information. Coach your team on how to become more critical thinkers while ensuring them that asking why or even saying ‘no’ is not only in their power, but also in their best interest for building great products.
Matt highlights that only at this level of individuation and autonomy will your engineers be able to break out of the tunnel vision loop and solve problems as they arise in new, better ways before they become problems to discuss.
What can you change Today?
Encourage. Don’t rush your team to get through the requirements and plan the deadline. Encourage them to discuss risk, find issues and ask whether it’s even possible. What is possible. What could go wrong and by when can a key area of value be guaranteed to be finished. What are the risks of these guarantees? Teach your engineers how to have these conversations with you and each other, then let them expand these discussions to other stakeholders and customers.
Be User-Centric. The biggest waste in software is building features no one needs or claim they need but never use. Rather than telephoning requirements, connect your engineers with actual users and empower them to narrow down the needs or even cancel the effort.
Let Developers Plan. Connected with the point above, as the team becomes more agile and empowered, they will make decisions without your involvement. Let them plan and merge their efforts with product parts of your org. Eliminate walls and silos from meetings where the key ‘why?’ is being discussed.
Make Ownership Real. The plan is nothing without the accountability and ownership it comes with: the ability to admit mistakes and correct them while there’s still time. Ensure your teams have time to cover the risks of the full operational needs of running features, monitoring and observability being one of the most often neglected in the industry.
Product Over Code. Focus on how users before classes and interfaces. How will they use the system differently? What capabilities will the new features enable? Have discussions about roll-out and how the changes may affect existing users, especially the negative end of the spectrum.
Triage for Simplicity, not perfection. Simple is easy to maintain. Easy to understand. Easy to ship and easy to change. Simple solutions have neither many features nor many bugs. Choose wisely.
You’ll find a link to the video of the conversation following the button link below.
Other highlights 👇
Why AI coding assistants might not help devs much
Tom McKay brought a recent study to our attention in which AI-generated code fell far below expectations in terms of bugs, defects and rework. He writes:
While there were statistically significant effects in some areas, Uplevel called them “inconsequential to engineering outcomes, e.g., cycle time decreased by 1.7 minutes.” The rate of detected bugs rose 41%
And that’s just what they were able to measure, let alone the unknown quirks lurking beneath the hallucinations and usual complexity.
This lack of trust in AI-generated code seems inconsistent with the vast adoption rates of code assistance. Nearly all engineers surveyed report having tried or actively using Copilot or similar tools, with 76% being positive or optimistic about its future benefits.
AI, they argue, cannot overcome common productivity issues like unclear requirements or project management bottlenecks alone.
Curiously, the study used two key DORA metrics along with bugs detected by a human and extended working hours. There was little or no impact on most metrics, expect for the aforementioned surge in bugs.
Hey Denis here: I speculate that the bugs being added were the same or just slightly above average and the increase in detection was produced by an increase in batch size and amount of code produced using coding assistance. This echoes similar sentiments from the recent DORA Research.
P.S.: In case you missed last week’s bytes in #29 we highlighted the 2024 DORA Report’s concerns and findings regarding usage of AI assistance in tech organizations.
How to Identify Silent Disagreements?
Remember that gut feeling when something is left unsaid and you leave the meeting thinking everything is fine? Yep! Raviraj elucidates this situation for you in his latest essay on engineering leadership.
You’re busy enough maintaining situational awareness for everything on your plate so here’s 5 signals to look for to help you spot, identify and disarm such patterns early enough to not lose any sleep on.
🤐 Low Participation. The uncommitted nodding, “yes yes.” Lack of trust, lack of understanding or simply lack of interest. These can blow expectations out of proportions early on in a project, especially when displayed by a stakeholder.
Solution: Follow up in smaller groups or 1on1 to create more space to speak up, especially regarding negative feedback. Ask specific questions, e.g. What/How, rather than “Any concerns?”🚶♂️Verbal Agreement But No Actions. Someone went off-spec! Ugh… Team members not following through on a newly accepted initiative. Sunset projects keep getting revived. Agreeing in essence, but uncommitted on other nuances like priorities, timing or key implementation details.
Solution: Discuss projects in relative priority to other projects, highlighting key constraints with regards to other urgencies and strategic objectives the team that executes may have. Ask for sign-off on all key milestones, rather than just handing a deadline.🔄 Never Ending “issues”. Two perfectionists chase down a rabbit hole. Constant issues and what-ifs followed by indecision and analysis. This pattern is very intuitive and will require some relationship building and social capital to explore.
Solution: Work together (pairing), rather than just having “meetings about X”. Break down main concerns and deliberately write a no-go list of issues that you will not address to make space for more strategic objectives.🗣️ Complains To Others. Office politics. Safe agreement and non-committal during the meeting, followed by gossip and objections behind your back during execution.
Solution: Build relationships regularly and early through 1 on 1’s. If you’re doing this just to solve a project it’s too late. Start before you need the support. Address and call out obvious concerns publicly, but keep negatives and conflicts to private conversations.⏳ “Let’s Take It Offline”. Welcome to the endless meeting. Long stretches of oh’s and ah’s about potential successes and issues only to realise that no one in the room is making strategic decisions or taking risks, rather just prospecting avenues of approach.
Solution: Set an agenda for all meetings, and set clear timelines for by when a decisions should be made. Sometimes the key decisions makers are not present and the decision should be deferred to a more appropriate time.
Find Yourself 🌻
That’s it for Today!
Whether you’re innovating on new projects, staying ahead of tech trends, or taking a strategic pause to recharge, may your day be as impactful and inspiring as your leadership.
See you next week(end), Ciao 👋
Credits 🙏
Curators - Diligently curated by our community members Denis & Kovid
Featured Authors - Matt Watson, Tom McKay,
Sponsors - This newsletter is sponsored by Typo AI - Ship reliable software faster.
1) Subscribe — If you aren’t already, consider becoming a groCTO subscriber.
2) Share — Spread the word amongst fellow Engineering Leaders and CTOs! Your referral empowers & builds our groCTO community.