data engineer and software development