Programming with other people, working with large codebases and working with multiple libraries and frameworks are basically all software engineering realities that education gives minimal training for. If you can view the job as a learning experience, it’s probably a good one even though it is frustrating on multiple levels right now. If you’re scrupulous about needing to pull the same weight as the other members and are thinking about switching jobs because of this, you could just talk about it to your manager. They might concede that yeah, you’re not a good fit, and then you can go find a less miserable place to work in, or say that they think you’re actually doing fine, in which case you can go back to considering the learning experience perspective.
Can’t advise on the taking the time off to do a PhD instead, but I don’t think you should give up on programming just yet. Like others said, there are many companies, and bigger companies have more resources to spend for training and mentoring. Also, the current mode of mixing together a bunch of frameworks developed in the last few years nobody really understands and rushing to the market with a minimum viable product chock-full of technical debt is probably just an artifact of the web as an application platform still being a reasonably new thing and people rushing to figure out all the simple things they can do with it. If the technology stabilizes, there’s going to be more opportunity for mastering long-lived technologies.
On the other hand, becoming a specific technology expert in programming is a gamble. Technologies just plain up die sometimes. Math domain expertise is probably a lot more durable, but it’s probably also trickier to get a nice math job than it is to get a nice programming job.
Programming with other people, working with large codebases and working with multiple libraries and frameworks are basically all software engineering realities that education gives minimal training for. If you can view the job as a learning experience, it’s probably a good one even though it is frustrating on multiple levels right now. If you’re scrupulous about needing to pull the same weight as the other members and are thinking about switching jobs because of this, you could just talk about it to your manager. They might concede that yeah, you’re not a good fit, and then you can go find a less miserable place to work in, or say that they think you’re actually doing fine, in which case you can go back to considering the learning experience perspective.
Can’t advise on the taking the time off to do a PhD instead, but I don’t think you should give up on programming just yet. Like others said, there are many companies, and bigger companies have more resources to spend for training and mentoring. Also, the current mode of mixing together a bunch of frameworks developed in the last few years nobody really understands and rushing to the market with a minimum viable product chock-full of technical debt is probably just an artifact of the web as an application platform still being a reasonably new thing and people rushing to figure out all the simple things they can do with it. If the technology stabilizes, there’s going to be more opportunity for mastering long-lived technologies.
On the other hand, becoming a specific technology expert in programming is a gamble. Technologies just plain up die sometimes. Math domain expertise is probably a lot more durable, but it’s probably also trickier to get a nice math job than it is to get a nice programming job.