Profile picture

Written by Blake Martin Software Engineering Manager You should follow them on Twitter

  1. November 11, 2024

    AI is a powerful assistant in software development, capable of generating boilerplate code, suggesting basic implementations, and helping with simple debugging. However, it falls short in designing scalable architectures, optimizing performance, and understanding business context—critical tasks that require human insight. While AI speeds up routine tasks, the responsibility for making strategic, scalable, and context-driven decisions remains with the engineering team. This article explores how AI serves as a valuable tool but lacks the expertise needed for high-level software design, emphasizing the essential role of skilled developers in creating long-lasting, efficient software solutions.

  2. November 05, 2024

    Explore the essential strategies technical leaders need to succeed, focusing on driving team alignment with business goals and fostering individual engineer growth. Learn how Engineering Managers and Tech Leads can create efficient workflows, encourage autonomy, and support skill development to build a high-performing team while empowering each engineer's career advancement.

  3. October 22, 2024

    In this article, we explore what 'ownership' truly means for software engineers, especially within the context of the Software Development Life Cycle (SDLC). Beyond delivering features, ownership involves a proactive approach to the ongoing success of a product. We discuss how engineers can take responsibility for post-shipping tasks like observability, performance monitoring, scalability, and customer support. The article outlines practical questions engineers can ask themselves to ensure their software remains reliable, maintainable, and user-focused after deployment. It's a must-read for engineering teams looking to build a culture of ownership and long-term success.

  4. October 14, 2024

    Building a robust QA automation strategy is essential for improving software quality and accelerating development. What data, processes, and tools can help? Learn what you might be able to effectively consider and by thoughtfully implementing a QA automation strategy, your team can deliver reliable, high-quality software faster and with greater confidence.

  5. October 07, 2024

    Are you looking to develop leadership within your engineering team? This article explores actionable strategies for fostering and encouraging leadership among technically capable engineers. Learn how to guide team members to take ownership, make decisions, collaborate effectively, and grow into confident leaders. Whether through mentorship, promoting cross-team collaboration, or creating opportunities for leadership, you'll discover practical ways to help your engineers think, act, and plan as leaders, driving both personal growth and team success.

  6. September 23, 2024

    The 2024 Stack Overflow Developer Survey revealed that 80% of developers are unhappy in their jobs, with burnout, unrealistic expectations, technical debt, and poor work-life balance being key contributors. As an engineering manager, what are some practical strategies to address these issues, improve team morale, and reduce burnout? Learn how to set realistic expectations, tackle technical debt, eliminate bureaucratic obstacles, and promote a healthy work-life balance for your engineering team.

  7. September 16, 2024

    Discover how engineering teams can improve revenue and customer retention by adopting a customer-first mindset, optimizing performance, ensuring scalability, and collaborating with non-technical teams. Learn practical ways engineers can directly impact business outcomes, even when they don’t interface directly with sales or marketing teams, and understand how quality code, proactive problem-solving, and usability innovations can enhance the customer experience and drive growth.

  8. August 26, 2024

    Struggling to balance team capacity with expertise in your software engineering projects? This article dives into the challenges of assigning work based on availability versus skill, offering practical strategies to ensure both productivity and growth. Learn how to make informed decisions that keep your projects on track while also fostering team development. Whether you're dealing with mixed-experience teams or navigating unfamiliar codebases, discover how to strike the perfect balance between getting the job done and building a stronger, more versatile team.

  9. August 19, 2024

    Are you a Software Engineer looking to improve your leadership skills and reduce stress? This article delves into how journaling and writing can enhance your cognitive clarity, emotional intelligence, and organizational abilities. Learn how these practices can help you make better decisions, foster creativity, and communicate more effectively with your team.

  10. August 12, 2024

    As a Software Engineering Manager, empowering your team leads to foster a more collaborative environment is key to driving innovation and engagement. This article explores how to help team leads transition from dominating meetings with statements to leading with questions, creating a space where every voice is heard. Discover practical strategies for encouraging interactive discussions, providing constructive feedback, and modeling effective facilitation. Learn how this shift can transform your team dynamics and lead to greater productivity and creativity.

  11. August 05, 2024

    In today's remote-first world, effective collaboration and communication within engineering teams are more important than ever. As an engineering manager, it's crucial to implement strategies that foster a cohesive and productive remote work environment. This blog post explores practical steps to facilitate collaboration, from proactive 1:1 interactions to cross-team initiatives, ensuring that your teams stay connected, informed, and aligned on their goals. Discover how to create a seamless flow of information, build strong team relationships, and promote continuous learning and innovation across your remote engineering organization.

  12. July 29, 2024

    Understanding your team's challenges and triumphs can build trust, enhance communication, boost morale, foster innovation, and support personal growth. Leading with empathy not only creates a positive work environment but also drives productivity and success. Are you an empathetic manager?

  13. July 22, 2024

    Who owns the work that you do? The individual? The team? How can you install a collective sense of ownership in the team and what does that mean? As a software engineering manager, I emphasize the importance of collective responsibility across all roles—engineers, UX designers, QA specialists, product owners, and DevOps. This principle encourages proactive problem-solving, where team members don't defer responsibilities but take ownership at every stage. Learn how to support and coach your team to embrace this ethos through leading by example, encouraging collaboration, providing training, and recognizing achievements. Foster a culture of open communication, regular feedback, and empowerment to ensure everyone thrives and delivers outstanding products.

  14. July 15, 2024

    Discover how to architect software for robustness, extensibility, scalability, sustainability, and security from a Software Engineering Manager's perspective. Learn key principles, best practices, and strategies to balance rapid delivery with long-term quality. Enhance your development process with insights on defensive programming, modular architecture, capacity planning, sustainable coding, and a security-first approach. Embrace a culture of continuous improvement and build software that stands the test of time.

  15. July 08, 2024

    Making software engineering teams more efficient is an important objective. As a Software Engineering Manager, I share insights on the importance of automating team processes, software development, testing, and deployments. Learn how prioritizing automation leads to higher productivity, quality, and faster delivery. Embrace automation to enhance your development environment and drive continuous improvement and innovation.

  16. July 01, 2024

    Fostering a culture of knowledge sharing and continuous improvement can lead to long-term project success. A key principle of successful software engineering teams is to 'Generalize to Widen Impact' and can transform your software development process. This includes strategies to make code modular, reusable, and well-documented, turning implicit knowledge into explicit, valuable assets for your team. How do you do this as a software engineering manager?

  17. June 22, 2024

    The importance of refactoring along the way in software development enhances code readability, improves maintainability, and manages technical debt. Find out how to build discernment in refactoring decisions, balancing immediate improvements with larger refactoring tasks.

  18. June 18, 2024

    Explore the importance of user-centered design, enhancing user satisfaction, reducing development costs, and driving innovation. Learn practical strategies for engaging with users, collaborating with UX/UI designers, utilizing user personas, analyzing user data, and conducting usability testing. Understand how these practices influence day-to-day software engineering work, prioritizing user stories in agile development, fostering a culture of empathy, and measuring success through user satisfaction.

  19. June 10, 2024

    Discover how integrating AI tools can enhance productivity and efficiency in engineering teams. Learn about the strategic approach to selecting, evaluating, and measuring the impact of AI tools, from automating routine tasks to improving decision-making and code quality. This article provides insights for software engineering managers on fostering innovation and continuous improvement within their teams through the use of advanced AI technologies.

  20. May 28, 2024

    Discover the benefits of having product owners and product managers attend daily standups with engineering teams. Learn how this practice enhances communication, aligns priorities, and fosters collaboration. As a software engineering manager, find out how to encourage their attendance and make standups meaningful and productive for everyone involved. Gain insights into coaching your engineering team to improve transparency, problem-solving, and overall efficiency. Boost your team's performance and streamline processes with these practical tips.

  21. May 20, 2024

    Discover effective strategies for addressing job dissatisfaction among software engineers in your team. Learn how to identify and understand their concerns, provide transparency, align work with personal goals, and promote professional growth. This guide helps software engineering managers navigate challenges and foster a positive work environment, ensuring team satisfaction and productivity.

  22. April 08, 2024

    Discover how an Engineering Manager prioritizes work-life balance for their team, leading by example and advocating for well-being. Learn how clear communication, realistic deadlines, and proactive support help prevent burnout and create a positive, productive work environment.

  23. March 18, 2024

    Discover the transformative power of in-person collaboration for software engineering teams. Explore how face-to-face interaction fosters camaraderie, enhances problem-solving, and strengthens team cohesion, setting the stage for more effective collaboration in the future.

  24. March 11, 2024

    Discover the nuances of Quality Assurance (QA) in software development and learn how to navigate the challenges of ambiguity. Explore coaching strategies to support your QA team, promote a test-driven mindset, encourage collaboration, provide training, emphasize documentation, and celebrate successes.

  25. March 04, 2024

    Learn how effective communication, clear expectations, empowerment, training, celebration of success, feedback, and leading by example are crucial for conveying Objectives and Key Results (OKRs) focused on improving quality and performance to a software engineering team. Discover strategies for achieving these goals and delivering exceptional software.

  26. February 26, 2024

    Discover the importance of investing in professional education and development for software engineering teams. Learn how continuous learning can lead to growth, job satisfaction, improved performance, and talent attraction and retention. Explore strategies for encouraging and supporting learning opportunities within your team.

  27. February 20, 2024

    Explore the challenges of introducing a new programming language to a software engineering team and strategies for successful adoption. Learn how to address the learning curve, resistance to change, integration with existing codebases, and maintaining consistency in coding practices.

  28. February 12, 2024

    Learn about the challenges and benefits of splitting software engineering teams for scale. Discover key factors to consider, such as project complexity, team dynamics, and communication, along with strategies for successful implementation and the role of Product Owners and Engineering Managers in the process.

  29. January 29, 2024

    Learn about the concept of Minimal Viable Product (MVP) in software engineering. Discover how identifying an MVP helps teams prioritize essential features, release products sooner, gather valuable feedback, and iterate for continuous improvement.

  30. January 22, 2024

    Learn how to align engineering and product teams on the 'definition of done' for successful project completion. Explore strategies for collaborative definition, user story incorporation, iterative prototyping, cross-functional meetings, and continuous refinement.

  31. January 15, 2024

    Discover the importance of regular one-on-one meetings for software engineering managers. Learn how these meetings enhance team cohesion, individual development, and overall team effectiveness, leading to a thriving work environment.

  32. January 11, 2024

    Explore effective goal-setting strategies for software engineering managers in the dynamic tech landscape. Learn how to adopt an agile mindset, prioritize skill development, foster collaboration, and ensure well-being for a successful year ahead.