A software development engineer tests and documents software for client applications, server applications, and websites. The engineer uses source debuggers, visual development environments, program dumps, and performance monitoring tools to ensure the quality of the software. The engineer will work with designers and content producers to get the desired results for clients. The software engineer will write code to create many types of software, such as multi-threaded networked server applications and single-threaded or user interface event-driven applications (either stand-alone or those that access servers and services). The engineer may write code to create webpages or access database information and business logic servers. The engineer will be able to write as well as modify and debug software for client applications, server applications, and websites. Excellent communication skills are a must in order to work with clients and understand what is desired as an end result as well as communicate back to clients what is actually possible to achieve. A software development engineer should be able to function as part of a productive team working toward a common goal and should be able to provide and respond to constructive criticism. Education requirements vary depending on the employer, but an engineer should at least have a high school diploma or GED, and a college degree in information technology or computer sciences is desirable. A software development engineer should be well-versed in a number of different computer programming languages such as C, C++, Java, HTML, Python, or Perl. Experience building systems on a cloud infrastructure is also helpful.
Software Development Engineer (SDE) Tasks
- Write, modify, and debug software for web sites.
- Test and document software for client applications.
- Use source debuggers and visual development environments.
- Test and document software for web sites.
- Work with with designers and content producers.