Many of the software companies have gone through rapid changes in the recent few month to adapt to the affect of COVID. Massive revenue losses in companies across all industries due to businesses not able to operate normally during this time. We've all heard stories of job cuts in the past few month.
The graph here shows jobs layoffs in silicon valley from early March to late May. The industry of tech companies has cut more than 40,000 jobs. Uber announced it would slash 3,700 positions, Airbnb would cut 1,900 and Lyft Inc. fired more than 1,000 people.
Companies in general has accepted that COVID is going to be around for a while, this uncertainty requires the companies to plan long term strategies and capital raise to sustain day to day operations.
With the reduction in head counts, it means less staff members to cover the same day to day R&D and operations. What it means is that versatile/multi functional teams are needed. It requires teams to be formed based on the needs of the particular project. Priority changes could happen more regularly and team/team members should be able to adapt quickly.
What does this mean for individual team members:
1. During Covid, many of the IT companies have shifted to working from home (WFH) for the safety of their staff. This requires the staff members to show a great deal of ownership for the work they're doing. It's really hard to micro management in a WFH environment.
2. WFH also proposes another challenge which is motivation. For someone to be interested in their work they need to be motivated. Being motivated when no one is around really requires the person to be self driven and proactive. Self learning becoming more important. Constantly learning and applying what they've learnt to the real world.
3. I've already mentioned the need for staff to be versatile and able to change work priorities due to effects of companies and industries in COVID. Things like if you're a developer working on backend services, you might be asked to work on networking/security. Same for testers, you might be a backend/API tester, but now you're required to work on the full end to end system testing.
4. Test Automation has been at the heart of IT companies for a decade or two now, COVID has just pushed it to an even higher level. With reduced staff counts and cost reductions, software products more than ever requires tests to be conducted automatically and periodically. With the increasing need to release software in shorter life cycles (once a day or multi times per day) it's important to be able to determine the quality of software 'in real time'. We all know the huge demond for need full stack developers (programmers that can work on both frontend and backend). I would like to introduce a similar term for testers, 'full stack test engineers', testers who can automate both the frontend, the API and backend layer (ie. DB testing).