Responsible for designing, developing, troubleshooting, or debugging software programs. Develops software tools including operating systems, compilers, routers, networks, utilities, databases and internet-related tools, etc.
Determines hardware compatibility and / or influences hardware design.
Experience in programming software for operating systems, utilizing machine assembly and / or job control languages, and some knowledge of software capabilities.
Designs algorithms and data structures. Experience on development of complex software projects, familiarity with C / C++ coding, and a strong background in data structures and algorithms.
Has strong desires to learn and explore new technologies and demonstrates good analysis and problem-solving skills. Prior knowledge and experience of CAD tool development are required.
Typically requires a minimum of 2 years of related experience. Usually developing professional expertise, and may apply company policies and procedures to resolve a variety of issues.
At a minimum, has working knowledge of work area and general proficiency with tools, systems, and procedures required to accomplish the job.
Exercises judgment to determine appropriate action. Implementations and solutions are reviewed for accuracy and overall adequacy.
Builds productive internal / external working relationships. Contacts are primarily within business unit and occasional organizational and external customer contacts on routine matters.