Lesson 4 - Activity 1 - What can we learn about roles from job listings?

Time: 15 Minutes

Introduction: In this lesson, we briefly covered some of the common roles in software development teams looking at the common activities they carry out and their necessary skills. Now it’s your turn to dig into these roles a bit deeper and see what you can discover.

Purpose: Having an awareness of roles that exist in software development teams is necessary to help you understand how software is made and know who you need to speak to depending on a given situation. This activity is designed to help you understand these roles more deeply.

Activity:

  1. Pick at least one of the roles covered in the lesson
  2. Search for related job listings around that role.
  3. Make notes about the activities and skills the role requires and compare those to what we covered in the lesson.
  4. Share your findings on this thread to help others learn more about these roles and compare your findings.

I picked the Coach role for this exercise and here is what I found:

Activities:
• Work within a delivery team to provide mentoring of agile technical practices
• Guide and teach others using pair programming for:
○ Test driven development
○ Behavior driven development
○ Continuous Integration/Continuous Delivery
○ Automated testing
• Teach architectural principles through the process of emergent design
• Participate in team ceremonies as both a team member and mentor
• Provide observations and suggestions for improvement
• Work with other team mentors and coaches to collaborate on maturing the team and organization agile practices
• Assess and report outcomes to customers and management team.
• Help prepare teams to apply agile methodology in other industries.
• Develop a plan to prepare teams to learn agile methodology and train staff.
• Provide the leadership and knowledge needed in order to effectively expand or introduce agile methodology.

Skills:

• Expert in one or more of the following languages and practices: Java &/or C#.NET, JavaScript, Android, iOS
• Strong experience in agile principles and technical best practices
• Strong automated testing skills
• Experience with the automated build process, unit testing and source code analysis tools
• Knowledge of Continuous Integration/Continuous Development
• Ability to assess and coach team to optimal agility
• Team oriented and possess strong interpersonal communication skills
• Comfortable working in a variety of social and business environments and multiple technology stacks
• Have excellent time management skills
• Capable of making quick and effective decisions
• Be a strong leader who is capable of training others

So, this is a long list of activities and skills required for some job postings I found online. What seems to stand out from these is that this kind of role requires knowledge from a wide range of technologies. I do not think that deep understanding is required but at least some knowledge needs to be present to take the role.

1 Like

I had a look at some advertised roles for a “Scrum Master” and here is one I found:

Essential Skills And Experience

  • Solid and demonstrable commercial experience of being a Scrum Master (Certified ideally) in fast paced, Software (SaaS) house environment.
  • Vast experience of Agile (Scrum and KANBAN) processes - depth and breadth of experience across the full SDLC.
  • The ideal candidate will be well versed in working with the customer, internal stakeholders, and other Scrum Masters to identify, prioritise, and improve delivery of the roadmap, capabilities, and epics.
  • Good coaching and mentoring, including man management and leadership skills are required for this role.
  • Drive Agile methodology throughout the project / teams - ensuring the development teams are practising the core agile principles of collaboration, prioritisation, team accountability and visibility.
  • Experience leading multi cross functional teams made up of QA, Test, Developers, Architects BA, Product Owners between geographically dispersed locations within the UK.
  • Manage Product back Log and Sprint Backlog.

Desirable Skills

  • Any Scrum certifications will be highly desirable – Certified Scrum Master (CSM) or Certified Scrum Practitioner (CSP) / Professional Scrum Master (PSM I or ii) / SAFe 4 or 5 etc.

The skills listed for this role relate to alot of the skills listed in the lesson:

  • Leadership
  • Coaching
  • Creative
  • Good listeners and Communicators
  • Good at planning
1 Like

I had a look at some advertised roles for a ‘Tester’ and here is an example of one:

Activities

  • Review functional and technical documentation
  • Prepare test estimations against user stories and tasks
  • Derive and prepare test data
  • Writing and Execution of Manual and Automated test scripts
  • Fault logging, escalation and monitoring
  • Prepare test plans, test specifications, test conditions & scripts and summary reports
  • Regression testing and User Acceptance Testing / monitoring

Skills

  • ISEB Foundation Certificate in Software Testing (Or equivalent)
  • Manual/Exploratory Testing & Automation Testing
  • Functional Testing & Regression Testing
  • Excellent communication skills (Will be working with various teams)
  • Jira for Defects & Project Management/Time Tracking
  • TestRail for Test Case Scripting

Desirable skills

  • Interest in working in the gambling/iGaming industry
  • Some experience in working in an Agile methodology
  • Some knowledge of automation testing tools

The skills listed for this role relate to a lot of skills in the lesson:

  • Good technical knowledge
  • Creative
  • Excellent listener and communicator
  • Fast learner
  • Critical and lateral thinking