data scientist vs software engineer