Dear HN,<p>I am in the final year of my master's in CS. I have a workable background in graphics/vision. However, as I am approaching the end of my degree, the industry has changed a lot. Most of the work depends on NeRF and diffusion. Now, I can stay relevant by studying these methods, but I am too tired of running in the rat race. I want to focus my career to be a 3D software engineer. Where do I start? All my experiences so far are in applied research. I enjoy it but burnout is really high for me with these roles. How do I change to software engineering?<p>Before I had a clear goal to be a research scientist. Now it is about being a 3D software engineer. Do you have any tips to make the switch?<p>Thank you.
Answered about 100 times already but I’ll answer again. Senior software engineer doesn’t refer to something you <i>are</i> or a quality inherent to you. It refers to the degree of competence, leadership, and experience you bring to a project and team. If you plan to leave academia remember to leave behind the academic obsession with titles and credentials.
There's really not much advice to give beyond applying for relevant jobs and learning as much as you can for a few years at a junior level. Importantly, stay curious and try to understand the full stack to at least a basic level of competency.<p>"Senior" (at least in my opinion) just means you're not going to need hand-holding. If a company is hiring a "senior" dev they tend to mean someone who is competent enough to get on with things on their own.<p>As soon as you feel you don't need hand-holding I'd start applying for senior positions, but like I say you really need a decent competency across whatever your tech stack is to do that. If you can't use the Linux command line and struggle with Git, but you're a great 3D engineer you're probably not senior enough.<p>I find it's all the stupid little skills that make a good senior dev. We had a senior frontend guy come to work at my place recently and it was a disaster because he wasn't familiar with basic Git commands and couldn't get his dev environment set up on his own. To be fair with him those weren't "frontend" skills, but skills any good senior dev doing the kind of work he was doing should have.<p>That said, it's okay to ask a few questions and not know everything, but those should typically be higher level questions - "what's your Git workflow?" not, "how do I use git?", for example.