This seems relevant given the recent massive discussion on big vs small companies. Throwaway just in case.<p>I&#x27;m currently finishing my PhD in computer vision. I&#x27;m about to start a job at a small hardware startup. The environment is great and it feels very close to being not work, which is nice.<p>Down the line I would probably be looking to join one of the big players in vision like Google, but right now I feel like I need more experience. I&#x27;m 25 now, for reference.<p>The team are highly educated (all post-doctoral), but I would probably be software engineer number one i.e. C++&#x2F;python. If and when we start shipping code it&#x27;s probably going to be up to me to define in-house coding standards, source control, documentation, unit testing and so on.<p>I don&#x27;t have a formal background in computer vision (physicist) and while there are lots of concepts that I&#x27;m aware of from, well reading HackerNews, I don&#x27;t really know what industry best practices are. I worry that while I can get the job done, I have no idea whether the code solutions I produce are &#x27;professional&#x27; (not sure what a better word is here).<p>How should I go about improving myself in this respect?<p>How do I learn the things that would be (I assume) common practice if I was a SWE working for a megacorp or being mentored in a startup instead?
Ask HN: How can I make sure that my skills develop in a small company?