Job responsibilities of a good software engineer:

10% writing business code
15% writing tests
20% writing documentation
55% communicating with other people about code, tests and documentation