A to Z Software Development Roles

I’m Chris Saunders, a technologist passionate about product delivery and innovation in the technology industry. This blog is where I share my insights, experiences, and ideas around building and delivering exceptional products.

Software Development Roles: Skill Attributes Visualisation

This 3D scatter plot visualises various software development roles based on three key skill attributes:

  • Project Timeline (x-axis): Representing the spectrum from project start to project end.
  • Focus Orientation (y-axis): Spanning from people focused to technology focused roles.
  • Thinking Style (z-axis): Differentiating between operational thinking and strategic thinking.

Each marker represents a distinct role, with its position indicating the relative emphasis on each of these attributes. Use the chart to explore how different roles balance these skills. How one person in a 3D space could assume another role nearby in the space.

Click the "Reset Chart View" button to reset the chart to its default view.

Click the "Set Y and X Front View" button to set the chart to see Y on the left and X on the bottom.

Click the "Set Y and Z Front View" button to set the chart to see Y on the left and Z on the bottom.

Interacting with the 3D Scatter Plot:

Zoom:

  • Mouse Scroll: Scroll the mouse wheel up and down to zoom in and out.

Rotate:

  • Click and Drag: Click and drag on the plot to rotate it in any direction.
  • Right Click and Drag: Right-click and drag on the plot to pan it left, right, up, or down.

Reset Chart View:

  • Reset Button: Click the "Reset Chart View" button below the plot to reset the view to its default position (Y axis left, X axis bottom, and Z axis depth).

Explore:

  • Hover: Hover over a data point to see additional information about the role it represents.

"T" for Tester. Software Development Roles: A to Z

A Tester plays a critical role in verifying the functional and non-functional aspects of software applications. They identify defects and usability issues through thorough testing processes and collaborate closely with developers, product managers, and other stakeholders to understand requirements and create effective tests.

Personal Story: Having run a test consultancy company in the past, I’ve gained significant insights into being a tester and have found some very interesting defects over the years. I like the term Tester—it's simple and to the point. However, many testers have more specific titles, often reflecting the domain they work in, such as: Software Tester, Mobile Tester, Web Tester, Security Tester, Usability Tester, API Tester, UAT Tester (User Acceptance Testing), Embedded System Tester, Game Tester, Network Tester, Performance Tester.

Then there are testers with "Engineer" in their title, such as Test Engineer, Test Automation Engineer, and Performance Engineer. This likely stems from the idea that if you can have a Software Engineer, you should also have a Test Engineer, especially since they often write code to enable their testing.

Titles like Test Analyst imply a focus on analysing requirements and designing tests. In consultancy, you find titles like Test Consultant, Senior Test Consultant, and Principal Test Consultant.

However, titles with "QA" in them can be misleading. Quality Assurance (QA) is a broader discipline, often managed by a Quality Manager, which differs from the tester's role.

Interesting Fact: The origins of systematic software testing can be traced back to 1947, with pioneers like Grace Hopper at Harvard. The earliest documented "bug" was caused by a moth trapped in a machine. Fun fact: a moth is actually an insect and not a bug.



Popular Posts