Role: PSA-SCADA
Location: Remote US
Job Type: Contract
Interview: Phone/Skype
Job Description:
This role is required for the implementation of advanced SCADA and Power System applications. Application implementations include functional analysis (requirement traceability), documentation, configuration, test case drafting, testing, defect triaging and automation test (Katalon) support.
Experience with power system applications (power flow, state estimator, generation control, contingency analysis, stability analysis) and /or Experience with SCADA (Supervisory Control and Data Acquisition) applications and high availability applications.
5+ years of work experience in customizing and delivering Energy Management Systems preferbly Reliance EMS.
5+ years of experience with electric utility industry practices.
3+ years of experience with electric utility industry practices.
5 + years of experience with C++, Java or other secondary skills
C++ Development - Independently designs and implements non-trivial C++ features; comfortable with OOP, STL, patterns; debugs and optimizes code; contributes to code reviews and technical decisions
C Development - Independently develops and maintains C modules; strong in pointers, memory management, and low-level concepts; debugs complex issues; contributes to coding standards and best practices.
Java - Delivers non-trivial Java components independently; strong with core APIs, collections, error handling; debugs complex issues; participates in design and code review discussions.
Linux Development - Comfortable developing and debugging on Linux; uses shell, scripts, build tools, and logs; can configure dev/test environments and resolve environment-related issues.
Python - Implements and maintains routine Python functionality. Understands core syntax, data structures, functions, classes, and basic error handling. Uses common libraries and tools (e.g., requests, logging, unittest/pytest) with guidance. Handles straightforward bugs; needs support for advanced features (e.g., async/await, metaclasses, complex packaging, performance tuning).
Master Common protocols: IEC 608705101/104, DNP3, MODBUS, IEC 61850 exposure is a plus - Has basic awareness of IEC 608705101/104, DNP3, MODBUS, and the role they play in SCADA/EMS communications. Recognizes them by name and can follow high-level explanations (e.g., telemetry vs. control, serial vs. TCP/IP), but has limited experience with detailed configuration or troubleshooting. Can execute predefined test steps and update documentation or point lists when given explicit instructions, but relies on senior staff for interpreting protocol behavior and resolving issues. Minimal exposure to IEC 61850."
Key Responsibilities:
Software Design & Development
- Design and implement new functionalities for EMS, and DTS applications in the power systems domain.
- Produce high-quality EMS functional software design specifications and related technical documentation.
- Ensure solutions meet functional and non-functional requirements (performance, reliability, security, maintainability).
Application Implementation & Configuration
- Lead the implementation of advanced SCADA and Power System applications.
- Perform application configuration and tuning to meet customer and system requirements.
- Conduct functional analysis and maintain requirements traceability throughout the development lifecycle.
Testing, Quality & Automation
- Define and draft test cases based on functional and non-functional requirements.
-Execute validation and regression tests; analyze results and drive defect resolution and triage.
- Support and contribute to test automation initiatives (e.g., Katalon) to improve test coverage and efficiency.
- Ensure adherence to quality assurance standards, processes, and best practices.
Collaboration & Technical Leadership
- Collaborate with system/project engineers, frontend developers, EMS application developers, and technical leads to deliver solutions aligned with product strategy and architecture.
- Consult with other technical leads to ensure compliance with project-related system design guidelines and coding standards.
- Provide input to technical leads on scope, schedules, and cost estimates based on technical complexity and delivery risks.
Customer Interaction & Support
- Interface with customers to address general and domain-specific issues within the area of functional expertise.
- Provide technical support, root-cause analysis, and problem-solving for complex issues in test and production environments.
- Prepare and maintain user, test, and operational documentation.
Requirements Management & Traceability
- Analyze and maintain functional and non-functional requirements traceability matrices.
- Ensure clear linkage from requirements through design, implementation, and testing.
What are the Mandatory skills and skill proficiencies required for this position?
- Bachelor s degree in Computer Science, Electrical Engineering, Software Engineering, or related field.
- Significant experience in software development for industrial, SCADA, or power system applications.
- Strong proficiency in software engineering principles, design patterns, and best practices.
- Experience with testing practices, defect analysis/triage, and quality assurance processes.
- Demonstrated experience in requirements analysis and traceability.
- Strong analytical, problem-solving, and debugging skills.
- Effective communication skills, with the ability to collaborate across multidisciplinary teams and interact with customers.
What are the Optional skills and skill proficiencies for this position?
- Experience with EMS, and/or DTS applications in the power systems domain.
- Familiarity with SCADA systems and real-time control environments.
- Experience with test automation tools such as Katalon.
- Knowledge of power system operations, market operations, or grid management concepts.
- Experience working in a Software Center of Excellence or similar high-standard engineering organization.