Develop high-quality software design and architecture.
Identify, prioritize and execute software development life cycle tasks.
Develop applications by producing clean, efficient code.
Perform validation and verification testing.
Ensure software is up-to-date with the latest technologies.
Master’s degree in Computer Science, related technical field, or equivalent practical experience.
Software development experience in one or more general-purpose programming languages such as C/C++, Java, or Python.
Experience in software engineering (i.e., working with data structures, algorithms, and software design).