Should I keep my engineering position while I finish school?
Over this past summer, (the summer after my sophomore year), I began working for a well-funded, just-past-series-A startup. I wasn't officially on the engineering team, but I worked very hard to do a lot of data engineering, data visualizations, built some critical integrations and task automations, and otherwise took on tasks that others wanted not to have to do, but that were critical to the company.
The summer went by quickly, and just before I was to return to school, one of the cofounders took me out for a chat. He told me that he'd hate to see me go, and offered me a full-time position on the engineering team. When I said no, he offered a half-time position as I finished school. I said yes.
A week later, classes started, and I also made the transition to working with the engineering team. I quickly began to run into problems. I could definitely pass my classes and continue to work; don't get me wrong. But the reason I'm even remotely valuable as an incoming junior is because I become almost childishly curious about the subjects of my study.
As they put more responsibility on me at work, I worry that I will not have the time to dive in depth into critical courses such as linear algebra, database systems, linear regression, vector calculus, operating systems, etc. I worry that even if I pass these courses with a B, not taking the time to really play with them will leave me permanently stunted from my true potential as a computer scientist and engineer. I aspire to go into machine learning research, and I worry that taking this job has surrendered my long-term potential for a short-term reward.
But on the other hand, I've already taken the job, and it is giving me some experience. People tell me that the knowledge that I receive at work is more valuable than that which I receive at school. But all I've been doing is data visualizations, and end-to-end test automation. So I worry that if I stay, I'll be trained for a position below what I aspire for, but if I leave, I'll have a bad employment track record and burn some bridges.
I already accepted this job and I really like the team, but it is also interfering with my education much more than I originally anticipated. I fear there is no good way to cut an engineering position to "half time", and that I will not be able to compartmentalize the time needed to think about work.
For those experienced engineers, what would you do in my position? I'm curious about different perspectives, from the self taught, to the phds, etc. Is it worth it to stay at the risk of my understanding of some courses? Would it be bad to leave now? I'm only getting 3k a month TC and I worry I'm losing precision and detail in my knowledge of important fundamentals. But I also dont want to have bad marks on my name and employment record, so I'm really scared.
What should I do?