What actually software engineer do in a software company? Is it necessary to master in coding language for the growth in company? What's the best company in South Africa to work for as a software engineer?