Job Description
Assists in the design, definition, development, and test of the robotics software development; collaborates with senior engineers to ensure that internal and external clients' needs are met.
Key Responsibilities
• Collecting and researching data on customer experience with robotic platforms; preparing reports for management.
• Documenting architecture specifications, software design description, verification plans, test cases, operating procedures, and safety procedures.
• Utilizing appropriate tools to debug, test and maintain software and hardware systems of robotic tools; assisting in the verification and validation process.
• Participating in design and development of application software and algorithms for robotic platforms.
Requirements & Experience
Software Development Life Cycle: Knowledge of software development life cycle; ability to use a structured methodology for delivering and managing new or enhanced software products to the marketplace.
Level Working Knowledge:
• Describes similarities and differences of life cycle for new product development vs. new release.
• Identifies common issues, problems, and considerations for each phase of the life cycle.
• Works with a formal life cycle methodology.
• Explains phases, activities, dependencies, deliverables, and key decision points.
• Interprets product development plans and functional documentation.
Software Product Testing: Knowledge of software product testing; ability to design, plan, and execute testing strategies and tactics to ensure software product quality and adherence to stated requirements.
Level Working Knowledge:
• Participates in test readiness reviews, functional, volume, and load testing.
• Describes key features and aspects of a specific testing discipline or methodology.
• Tests software components for compliance with functional requirements and design specifications.
• Explains procedures for documenting test activities and results (e.g. errors, non-conformance, etc.)
• Conducts functional and performance testing on aspects of assigned products.
Application Development Tools: Knowledge of application and system development; ability to utilize a variety of specific tools and toolkits for developing applications.
Level Working Knowledge:
• Follows standards and guidelines for using locally available toolkits.
• Documents the uses of a specific application development toolkit.
• Differentiates among tools used for diverse strategic development platforms.
• Works with most toolkit components, features and facilities.
• Discusses the capabilities, features and uses of all tools for a specific platform.
Artificial Intelligence: Knowledge of the concepts, technologies and methodologies of artificial intelligence (AI); ability to develop, implement and/or apply artificial intelligence products and services in specific industry domain to achieve business goals.
Level Basic Understanding:
• Explains the methodology and technologies of artificial intelligence.
• Describes the concepts, functions and features of artificial intelligence (AI).
• Locates relevant resources to obtain the latest information on artificial intelligence.
• Cites examples of successful implementation of AI technologies and systems.
Programming: Knowledge of relevant programming languages and tools; ability to test, write, design, debug, troubleshoot and maintain source codes and computer programs.
Level Working Knowledge:
• Interprets application system designs and program specifications.
• Develops structured programming specifications.
• Works with the syntax, structure, features and facilities of at least one language.
• Writes programs in a specific language and for a specific platform.
• Applies structured programming techniques to structured environments.
Technical Troubleshooting: Knowledge of technical troubleshooting approaches, tools and techniques; ability to anticipate, recognize, and resolve technical issues on hardware, software, application or operation.
Level Working Knowledge:
• Discovers, analyzes, and resolves hardware, software or application problems.
• Works with vendor-specific diagnostic guides, tools and utilities.
• Handles calls related to product features, applications, and compatibility standards.
• Analyzes code, logs, and current systems as part of advanced troubleshooting.
• Records and reports specific technical problems, solving processes and tools that have been used.
Qualifications
Requires a degree in an accredited Engineering, Computer Science, or Materials Science curriculum.
