What actually software engineer do in a software company? Is it necessary to master in coding language for the growth in company? What are the best companies to work for as a software engineer in San Francisco?