What type of work in software would you like to do? The rest of my comment will assume that you mean the software technology industry, and not programming specifically.
There are many individual contributor roles in technology companies. Being a developer is one of them. Others may include field deployment specialists, system administrator, pre-sales engineers, sales or the now popular “data scientist”.
I agree that credentials help with hiring and promotions. When I evaluate staff with little work experience graduate credentials play a role in my evaluation.
They say that getting a graduate degree will be worthwhile even if I could have learned equally valuable skills by other means.
If you could have learned equally valuable skills by other means, then the graduate degree almost always comes out on top due to signalling/credentialing factor. However, usually this isn’t the case. Usually the graduate degree is framed as a trade-off between the actual signalling factor, coursework, research and graduate institution vs. work experience directly relevant to your particular domain of expertise. There are newer alternative graduate degrees programs that may be more useful to you with your strong undergraduate mathematics base such as Masters of Financial Engineering*, Masters in Data Science that offer a different route to obtaining an interesting job in the software industry without necessarily going through a more “traditional” CS graduate program.
I think I would enjoy and do well in graduate school, but if it makes little career difference, I don’t think I would go.
I think much will depend on the pedigree of the graduate school and the work that you can showcase (a portfolio of sorts) upon completion that will determine magnitude of career impact.
If you are dead set on being a programmer for the next 10 years, please consider why. The reason I bring this up is because some college seniors I’ve talked to can clearly visualize working as a developer, but find it harder to visualize what it’s like doing other jobs in the technology industry, or worse have uninformed and incorrect stereotypes of the types of work involved with different roles (canonical example are technology sales roles, where anybody technical seems to have a distaste for salespeople).
It you are still firmly aiming to be a developer, it may help to narrow down what type of programming you like to do, such as web, embedded, systems, tooling, etc., and also spend a bit of time at least trying to imagine companies you’d like to work for evaluated on different dimensions (e.g. industry, departmental function, Fortune 500, billing/security/telco infrastructure/mobile, etc.).
One additional point to consider is why not do both by working full-time and immediately embarking on a part-time graduate degree? Granted, some graduate degrees (e.g. certain institutions or program structure) don’t allow for part-time enrollment, but it’s at least something to consider. That way you cover both bases.
* Google MFE or “Masters Financial Engineering”—many US programs have sprung up over the past several years
EDIT: I apologize in advance for the US-centric links in case you are outside of N. America.
What type of work in software would you like to do? The rest of my comment will assume that you mean the software technology industry, and not programming specifically.
There are many individual contributor roles in technology companies. Being a developer is one of them. Others may include field deployment specialists, system administrator, pre-sales engineers, sales or the now popular “data scientist”.
I agree that credentials help with hiring and promotions. When I evaluate staff with little work experience graduate credentials play a role in my evaluation.
If you could have learned equally valuable skills by other means, then the graduate degree almost always comes out on top due to signalling/credentialing factor. However, usually this isn’t the case. Usually the graduate degree is framed as a trade-off between the actual signalling factor, coursework, research and graduate institution vs. work experience directly relevant to your particular domain of expertise. There are newer alternative graduate degrees programs that may be more useful to you with your strong undergraduate mathematics base such as Masters of Financial Engineering*, Masters in Data Science that offer a different route to obtaining an interesting job in the software industry without necessarily going through a more “traditional” CS graduate program.
If you are dead set on being a programmer for the next 10 years, please consider why. The reason I bring this up is because some college seniors I’ve talked to can clearly visualize working as a developer, but find it harder to visualize what it’s like doing other jobs in the technology industry, or worse have uninformed and incorrect stereotypes of the types of work involved with different roles (canonical example are technology sales roles, where anybody technical seems to have a distaste for salespeople).
It you are still firmly aiming to be a developer, it may help to narrow down what type of programming you like to do, such as web, embedded, systems, tooling, etc., and also spend a bit of time at least trying to imagine companies you’d like to work for evaluated on different dimensions (e.g. industry, departmental function, Fortune 500, billing/security/telco infrastructure/mobile, etc.).
One additional point to consider is why not do both by working full-time and immediately embarking on a part-time graduate degree? Granted, some graduate degrees (e.g. certain institutions or program structure) don’t allow for part-time enrollment, but it’s at least something to consider. That way you cover both bases.
* Google MFE or “Masters Financial Engineering”—many US programs have sprung up over the past several years
EDIT: I apologize in advance for the US-centric links in case you are outside of N. America.