software engineering job growth