Learning the different types of vulnerabilities/attack vectors and how these vulnerabilities can be exploited is useful to me as a software engineer as it allows me to appreciate security testing better and also to make sure the applications I'm building are not susceptible to such exploitations.