Should a Fullstack Developer pick up DevOps too?
First, let's ask ourselves what is the definition of a Fullstack developer before we go any further. In my opinion, a traditional Fullstack developer is someone who is knowledgeable in both front-end and back-end development coding and practices. The Fullstack developer may not be an expert in both Front-end or Back-end, but would at least be in one. For example, a Fullstack developer may be well-versed in backend development, having a good knowledge of how to write code that scales well etc. The Fullstack developer knows how to write JS, Typescript, HTML but may not be well-versed CSS. He may understand it enough to write and manipulate it. I know, this is a very specific example, because it relates to me. Ha!
So, let's come back to DevOps. It is particularly interesting that with Cloud development, it opens up possibilities than what we can do in the past. In the world of on-premise development, Developers would typically have to work with internal Networking, System Administrators folks to provision and setup environments. Because of restrictions, whenever Developers have new features/resources that requires some specific work/steps, Developers will have to work with them. In a lot of cases, the work is done manually and prone to errors.
With Cloud development, a lot of the resources Developer's need become available via Cloud tooling, whether via UI (i.e. Azure/AWS Portals) or command lines (Azure Powershell/CLI/ AWS CLI). This means Developers are in control of how to provision resources and configure those resources. There has also been a concept Pipeline as Code. Essentially, Developers write code on how to provision and configure the resources and check them in under source control. There's tooling such as Azure Pipelines or AWS CodePipeline that handles the plumbing. This means not only is this process being automated, it is also version controlled as well as audit-able as we can review the change history.
To answer the question of whether a Fullstack developer should pick up DevOps as well, I believe it is possible and will result in more control and time-to-market. Issues can be resolved quickly as Developers already understands the resources and configurations around these resources. One caution is that the tooling would have to be available and this is true for the most Cloud vendors like Azure and AWS. Hence, for Development shops that are still not ready to move to the Cloud, this may not be possible.