This gist outlines the change in the depth and breadth of the tasks and responsibilities of a software engineer as she continuously improves herself.
I created this to supplement a discussion in an internal slack group; then I though the rest of the world might benefit from this too.
Contributions are always welcome.
- Knowledge
- Demonstrates a fundamental knowledge of technical specialty.
- Writes code, completes programming and assists with the debugging of applications.
- Productivity
- Demonstrates the ability to learn quickly.
- Initiates self tasks.
- Is proactive.
- Exhibits good prioritization of self tasks.
- Exhibits good critical thinking.
- Good-enough planning and estimating self work.
- Can handle medium level problem solving on his/her own.
- Quality of Work
- Applies a test-driven approach.
- Applies the concepts of CI/CD.
- Mindful of making minimal cross-cutting concerns.
- Collaboration
- Is responsive.
- Communicates effectively with peers.
- Has willingness to learn from others.
- Demonstrates curiosity to understand what other teams are doing.
- Leadership
- Demonstrates eagerness to proactively develop skills.
- Contributes to team morale.
- Manages self successfully.
- Knowledge
- Maintains, modifies and enhances existing software, and participates in development and testing of new software application programs.
- Productivity
- Demonstrates the ability to work independently.
- Understands self as well as team’s tasks, prioritization, and is able to maintain focus on key deliverables.
- Accurate in planning and estimating work.
- Proactively shares ideas on a team level.
- Starts dealing with high level of complex problems without help.
- Quality of Work
- Achieves completeness in implementation.
- Understands the notion of clean code and refactors and augments tasks along the way.
- Very mindful of self work in terms of the impact on quality concerns.
- Understands customer’s needs in terms of quality.
- Collaboration
- Promotes collaboration within the team.
- Able to improve performance through feedback helpful to others.
- Understands what other teams are engaging in.
- Leadership
- Owns tasks till delivery.
- Add passion and excitement to team’s spirit.
- Holds himself or herself accountable for his/her work.
- Adds innovative ideas to the team’s goals.
- Knowledge
- Works within general practices to identify the product’s needs and potential enhancements; designs, develops, tests, and implements end-to-end solutions.
- Productivity
- Proactively shares ideas and collaborates on group level.
- Familiar with a broad set of tools and technologies.
- Leverages code-reuse as best as she can (including “open source”).
- Handles complex problems and starts helping others.
- Quality of Work
- Highly focused on the customer’s success.
- Designs for testability in mind.
- Collaboration
- Open and expressive.
- Reviews her work and others’ work, and able to give effective feedback.
- Willing to tackle any work necessary to get stuff done.
- Has solid presentation skills.
- Has a good understanding of cross-team activity.
- Leadership
- Has clout within the team.
- Contributes effectively to a positive team morale.
- Aligns personal efforts with business goals.
- Provides feedback on product’s design and usability.
- Proactively seeks opportunities to make the product better.
- Knowledge
- Plans design, develops, and implements new ideas and products.
- Leads multiple projects or a major critical project.
- Involved in cross-team groups, reviewing software’s impact on them.
- Productivity
- Adapts to changing priorities and situations.
- Can rapidly prototype.
- Influences goals beyond his/her group.
- Quality of Work
- Builds for interoperability.
- Works proactively with the support teams, understanding their needs and wants.
- Promotes an environment of security and quality in the product.
- Collaboration
- Communicates effectively across engineering teams and guides discussions with product people and other teams to make the product better.
- Provides visibility into the team’s activities.
- Proactively facilitates cross-functional groups to solve issues and problems.
- Demonstrates a high tolerance to constructive feedback.
- Leadership
- Helps recruit top talent.
- Holds on to a vision, while not being afraid to disrupt the status quo.
- Has clout within the entire engineering org.
- Responsible to provide effective feedback on the product’s strategy.
- Thinks systematically.
- Hold himself/herself responsible for the team’s work.
- Gracefully handles pressure.
- Mentors others inside the engineering group.
- Knowledge
- Advises and performs highly-complex research, designs and develops complex software architectures even with insufficient/unclear specifications.
- Generally serves as an expert, providing management with technical guidance.
- Productivity
- Proactively builds and influences the company goals beyond his/her own organization.
- Is the “go to” person to resolve complex cross-team problems.
- Quality of Work
- Drives discussions on building quality into specific products and integrated systems.
- Promotes a quality environment outside his group, and evangelizes best practices.
- Collaboration
- Communicates effectively within engineering and across other departments and with customers when necessary.
- A broader knowledge and familiarity with the products, teams, enabling him/her to articulate the product’s needs and technical challenges on a company level.
- Demonstrates high self-awareness of impact on the product.
- Leadership
- Has clout across the company.
- Aligns the team efforts with the business goals.
- Looked at as the “content leader” inside the company.
- Helps drive community involvement within the company.
- Leads relevant feedback on the company’s roadmap.
- Mentors and educates others in the company.
- Knowledge
- Industrially recognized as a guru and a thought leader.
- Advises the senior management and provides a broad technical direction.
- Productivity
- Prolific with innovation, ideas.
- Is disruptive.
- Has extremely visible external communications.
- Influences goals beyond the company, on an industry level.
- Quality of Work
- Makes significant long-term investments towards quality, informed by other departments outside the engineering group.
- Promotes a quality approach and thinking on a company level not only within the current product, but also across a wide spectrum of products that the company produces.
- Collaboration
- Communicates effectively with executives.
- Cooperates with partners and other stake holders to make sure the product value is maximized.
- Has vast understanding of the Company’s products enables him/her to influence trends and strategically impact the business as well as represents the company at outside events.
- Leadership
- Establishes differentiators through innovation.
- Has clout within the external technical communities.
- Holds himself/herself accountable for major architectural decisions.
- Looked at as the content leader both inside and outside the company.
- Drives community involvement, speaking at events, organizing events and tech-talks.
- Educates others in the community.