Staff+ engineering initiatives

6 min read

Photo by Glenn Carstens-Peters

Engineering initiatives are what Staff+ engineers will spend most of their time working on. It can be difficult to identify these initiatives if you are new to the role. Here is a list of initiatives to get you started.

Doing this kind of work without the right support can harm your career progression so do your own research and make sure you and engineering management are aligned on your role expectations.

Prerequisites

Before diving into the specifics of engineering initiatives, it’s crucial to establish the prerequisites for success. Staff+ roles, including Tech Lead, Architect, Solver, and Right Hand, are instrumental in driving these initiatives. These individuals are not confined to a single team but possess sponsored autonomy and often report to executive leadership team members, such as Directors of Engineering.

Initiatives

Engineering initiatives can be categorized into several key areas:

People

  • Mentorship Program: Initiate and lead a mentorship program within the organisation, pairing junior engineers with experienced mentors to facilitate their growth and development.
  • Role Expectations Documentation: Collaborate with cross-functional teams to create clear and up-to-date documentation outlining role expectations for various engineering positions.
  • Knowledge Sharing Sessions: Organize regular knowledge-sharing sessions or workshops to disseminate best practices and facilitate continuous learning among team members.
  • Feedback Mechanisms: Establish feedback mechanisms within teams to encourage constructive feedback, ensuring that team members’ voices are heard and valued.

Simplicity

  • Technology Assessment: Lead a team in evaluating the current technology stack, identifying redundancies, and making recommendations for consolidation where applicable.
  • Architectural Best Practices: Collaborate with architects to develop and promote architectural best practices and design patterns across teams.
  • Documentation Improvement: Initiate a documentation overhaul, ensuring that technical documentation is comprehensive, up-to-date, and easily accessible.
  • Autonomy Framework: Work on defining a framework that balances team autonomy while adhering to organisational standards, allowing teams to make technology decisions within specified guidelines.

Productivity

  • Test Automation Framework: Lead the development of a comprehensive test automation framework that can be adopted by multiple teams, improving code quality and release cycles.
  • Code Review Enhancement: Drive improvements in the code review process by implementing automation tools and best practices, reducing review cycle times.
  • Development Environment Streamlining: Identify and eliminate bottlenecks in the development environment setup process, making it faster and more efficient for new and existing team members.
  • CI/CD Pipeline Optimization: Collaborate with DevOps teams to optimize the continuous integration and continuous deployment pipelines, reducing deployment failures and improving overall release cadence.

Excellence

  • Technology Radar: Maintain a technology radar to stay updated on emerging technologies relevant to the organisation and recommend adoption strategies when appropriate.
  • Security Awareness Programs: Establish and promote security awareness programs, including training sessions and resources, to ensure that security is a top priority throughout the development process.
  • Metrics Definition: Work with product managers and data analysts to define and implement key performance indicators (KPIs) focused on product excellence and customer satisfaction.
  • Innovation Forums: Organize forums or hackathons to encourage engineers to explore and experiment with new technologies and ideas, fostering a culture of innovation.

Community

  • External Contributions: Encourage and support engineers to contribute to open-source projects and industry forums, showcasing the organisation’s expertise.
  • Internal Knowledge Sharing: Establish a platform or forum for internal knowledge sharing, allowing engineers to present their work and insights to colleagues.
  • University Partnerships: Develop relationships with universities and academic institutions to create internship programs or collaborative research projects, attracting top-tier talent.
  • Conference Participation: Facilitate engineers’ attendance at relevant conferences and events, and encourage them to submit papers or presentations to share their expertise with the wider community.

Diversity and Inclusion

  • Diversity Initiatives: Advocate for and participate in diversity and inclusion initiatives within the organisation, including diversity hiring programs and mentorship programs for underrepresented groups in tech.
  • Training and Awareness: Organize diversity and inclusion training sessions, workshops, or seminars to promote awareness and understanding among team members.
  • Inclusive Design: Promote the importance of inclusive design practices to ensure that products and services are accessible to users of all backgrounds and abilities.

Technical Debt Reduction

  • Technical Debt Assessment: Lead efforts to assess and categorize technical debt within the codebase, prioritizing areas for refactoring and improvement.
  • Refactoring Sprints: Organize focused refactoring sprints or initiatives to systematically address and reduce technical debt, collaborating with development teams.
  • Documentation of Technical Debt: Maintain documentation that tracks the identified technical debt, its impact, and the progress of ongoing efforts to address it.

Innovation and Research

  • Research Projects: Initiate and participate in research projects to explore emerging technologies or innovative solutions that could benefit the organisation.
  • Innovation Workshops: Organize innovation workshops or brainstorming sessions to encourage creative thinking and problem-solving among team members.
  • Proof of Concept (PoC): Collaborate with cross-functional teams to develop and present proof-of-concept solutions for potential new products or features.

Development Tooling

  • Tooling Evaluation: Lead efforts to evaluate, select, and implement new development tools and IDEs that can enhance developer productivity.
  • Custom Tool Development: Collaborate with engineers to develop custom tools or plugins that streamline common development tasks and automate repetitive processes.
  • DevOps Integration: Integrate development tools with DevOps pipelines to ensure seamless code deployment, testing, and monitoring.

Code Quality and Maintainability

  • Code Reviews Enhancement: Implement code analysis tools and coding standards to improve code quality during the review process.
  • Automated Code Refactoring: Develop scripts or tools that automate code refactoring tasks, making it easier to maintain clean and efficient codebases.
  • Codebase Documentation: Promote the creation and maintenance of comprehensive codebase documentation, including architecture diagrams and code comments.

Technical Debt Management

  • Technical Debt Assessment Tools: Develop or implement tools for tracking and visualizing technical debt, making it easier to prioritize and address.
  • Technical Debt Sprints: Allocate specific development sprints solely for addressing technical debt to prevent it from accumulating.
  • Code Smells Identification: Create automated checks to identify and notify developers of potential code smells and areas requiring refactoring.

Cross-Functional Collaboration

  • Product-Engineering Alignment: Foster closer collaboration between product management and engineering teams to ensure that development efforts align with business goals.
  • User Story Workshops: Organize workshops to refine user stories and acceptance criteria, reducing ambiguities and development rework.
  • Documentation Integration: Integrate documentation processes into the development workflow, ensuring that documentation is always up to date.

Continuous Improvement Culture

  • Retrospective Meetings: Promote regular retrospective meetings to reflect on past projects, identify areas for improvement, and implement action items.
  • Innovation Time: Allocate a percentage of development time for engineers to work on innovative projects that can lead to productivity improvements.
  • Feedback Loops: Establish feedback loops with end-users, gathering insights and using them to drive product enhancements.

Roadmap and high-level execution plan

Here is an example of a roadmap and execution plan for some of the above-listed engineering initiatives:

Refining Existing Documentation

  1. Assessment: Start by conducting a thorough assessment of the current documentation to identify gaps, outdated information, or areas needing improvement.
  2. Collaboration: Establish communication channels with various teams and stakeholders to gather feedback and input for documentation refinement.
  3. Documentation Update: Actively update and refine documentation, ensuring it remains clear, comprehensive, and easily accessible.
  4. Examples and Tutorials: Create working examples and video tutorials demonstrating the use of new APIs, components, libraries, etc., and integrate them into the documentation.
  5. Feedback Loop: Implement a feedback loop to continuously gather input and make timely updates to the documentation.

Streamlining Development Environment:

  1. Environment Analysis: Analyze the current development environment setup process to identify bottlenecks and pain points.
  2. Efficiency Improvements: Work on streamlining the setup process, making it faster and more efficient for both new and existing team members.
  3. Documentation: Document the updated setup process, providing clear instructions and working examples of table schemas, application bootstrapping, plugin integrations, etc.
  4. Testing and Validation: Test the streamlined process with team members and gather feedback for further refinement.

Enhancing Code Review Processes:

  1. Process Evaluation: Evaluate the current code review processes and identify areas for improvement.
  2. Best Practices Implementation: Implement best practices for code reviews, including coding standards, guidelines, and checklists.
  3. Automation Tools: Integrate automation tools for code review to reduce review cycle times and improve code quality.
  4. Collaboration: Collaborate with teams across the organisation to share insights and improvements, and provide training if needed.

Mentorship Program:

  1. Program Design: Develop a mentorship program structure, including goals, expectations, and a curriculum.
  2. Mentor Selection: Identify experienced mentors within the organisation and pair them with junior engineers.
  3. Onboarding: Facilitate an onboarding process for mentors and mentees, outlining their roles and responsibilities.
  4. Buddy System: Support the “buddy system” to help new hires integrate quickly into the organisation.
  5. Progress Tracking: Establish a system for tracking mentorship program progress and success.

Monitoring and Alerting Enhancement:

  1. Monitoring Assessment: Evaluate the current monitoring and alerting processes to identify weaknesses and gaps.
  2. Process Improvement: Implement enhancements to improve observability, including proactive issue identification and resolution.
  3. Code Analysis Tooling: Monitor, update, and implement code analysis tooling across teams to ensure high-quality code delivery and reduce potential issues.
  4. Training: Provide training and resources to teams on the improved monitoring and alerting processes.

Technical Debt Assessment:

  1. Technical Debt Assessment Plan: Develop a plan for assessing and categorizing technical debt within the codebase.
  2. Prioritization: Prioritize areas for refactoring and improvement based on the assessment.
  3. Sprint Planning: Collaborate with teams to allocate time in sprints to tackle technical debt.
  4. Optimization Identification: Work with multiple teams to identify optimizations in existing processes and share insights.
  5. Progress Tracking: Implement a tracking system to monitor the reduction of technical debt and its impact on code quality and performance.
  6. Communication: Keep stakeholders informed about the progress of technical debt reduction efforts.

Conclusion

In this post, I’ve listed several engineering initiatives that may be relevant to your organisation and provided a high-level roadmap and execution guide for some of them. For each initiative, you must go deeper to identify the specific things you need to do to get them done, refer to my post on Staff+ engineering initiatives: How to.

Working on these kinds of initiatives in your role as a Staff+ engineer will improve your organisational skills immensely. Try to setup an environment where you can fail safely as you are working on engineering initiatives, your psychological safety will be tested, and have fun!

References

Share this post