A successful software development endeavour is combination many elements including:
Whether building a software in tradition Software Development Life Cycle (SDLC) or in agile environment, team is a key component of any successful project as it could overshadow many of the factors listed above. A great team may not necessarily be a team with most skilled people, but a group of people with problem solving skills who communicate well, share the same vision and respond to changes fast.
So how do good teams look like?
Below is brief overview of roles and interrelation that could help you to be more efficient. It is important to note in agile teams, people are not limited to do one thing, neither is their involvement ends in a phase. For example in waterfall SDLC, a business analyst was only involved in the requirements gathering phase and a tester was only involved in the testing phase. While this is true to a certain degree but roles and people are dynamic and move across different works specially in smaller teams.
[Web Development] - [Mobile]
Every team has a leader. In agile context the role of team leader is different from its traditional definition. As agile teams are meant to be self-organised, team leaders act as facilitator and enabler (rather than manager). Team leader helps:
Team leader needs to have great communication, facilitation, project management and decision making skills. Understanding various technologies would be a great plus for team lead. In your squad, team leader could be one of the senior students with good communication (and ideally technical) skills.
[Web Development] - [Mobile]
Business analyst (BA) is one of the most valuable roles in software development. BAs work very closely with product manager and technical lead (or team lead) to define the scope, translate business requirements to deliverables (epics, features and user stories) prioritise requirements.
In small teams such as your squad, team leader and developers could act as BAs.
[Web Development]
Development team includes developers/programmers as well as business analysts, designers.
Developer/programmer role is probably one of the roles that is changed the most as result of agile practice. A developer is no longer just programmer that codes but is involved in design and testing. The scope of developers work is really depends on size of team, project and organisation.
In a team size of your squad, the scope of developers’ responsibilities extend to being BAs and testers
Developers are responsible for developing (coding) items i.e. features and user stories laid out in the sprint in two different ways (fronts)
[Mobile]
Similar to developer (web), mobile developer are responsible for coding and developing items in mobile platform iOS or Android.
[Web Development] - [Mobile]
Designers play critical role in bringing vision into reality. Specially in agile environment, they are involved from very early stage of developing low fidelity model to high fidelity prototype. Their work include developing wireframes (low fidelity), mock-ups (medium fidelity) and prototype (high fidelity). They liaise closely with client/product owner and developers to create the right user experience as well as ensuring the client is satisfied with ‘look and feel’ of the product.
There are various tools designers, below are some of them:
Wireframe (structure)
Mock-up (visual design) static display of how final product will look like
Prototype (interaction) Important for usability research
[Web Development] - [Mobile]
Data science in word is ‘spotting trends’ but opening this can, many things will come out: Data preparation, data visualisation, machine learning, deep learning, pattern recognition and text analytics.
As a data scientist you will need knowledge in IT, business knowledge, and math and statistics, so upskilling is something students may need to undertake in statistics and machine learning, coding languages in R and Python, data visualisation and reporting technologies – the future is very bright for data scientists so this is a great investment with high Return On Investment (ROI).