Job Description
Role Purpose
The primary objective of this role is to design, test, and maintain software programs for operating systems or applications that need to be deployed at a client’s end, ensuring they meet 100% quality assurance standards.
Responsibilities
Software Design and Development
Requirements Analysis: Understand the requirements and design specifications of the product/software.
Solution Development: Develop software solutions by studying information needs, systems flow, data usage, and work processes.
Problem Investigation: Investigate problem areas and follow the software development life cycle.
Client and Team Collaboration
Client Requirements: Analyze client requirements and convert them into feasible designs.
Team Collaboration: Collaborate with functional teams or systems analysts to investigate software requirements.
Project Management: Confer with project managers to obtain information on software capabilities.
Coding and Validation
Coding: Perform coding to ensure optimal software/module development.
Operational Feasibility: Evaluate analysis, problem definitions, requirements, software development, and proposed solutions to determine operational feasibility.
Automation: Develop and automate processes for software validation by setting up and designing test cases, scenarios, and usage cases, then execute these cases.
Software Maintenance and Upgrades
Error Fixing and Adaptation: Modify software to fix errors, adapt to new hardware, improve performance, or upgrade interfaces.
System Analysis: Analyze information to recommend and plan the installation of new systems or modifications to existing systems.
Quality Assurance and Documentation
Error-Free Code: Ensure code is error-free and passes all tests.
Reporting: Prepare reports on programming project specifications, activities, and status.
Documentation: Compile timely, comprehensive, and accurate documentation and reports as requested.
Team Coordination and Feedback
Daily Coordination: Coordinate with the team on daily project status and progress, documenting it accordingly.
Usability Feedback: Provide feedback on usability and serviceability, trace results to quality risk, and report to concerned stakeholders.
Status Reporting: Maintain ongoing status reporting and customer focus with respect to the project and its execution.
Client Interaction and Feedback
Requirement Capture: Capture all requirements and clarifications from the client for better quality work.
Regular Feedback: Regularly take feedback to ensure smooth and on-time delivery.
Continuous Learning and Support
Education and Training: Participate in continuing education and training to stay current on best practices, learn new programming languages, and better assist team members.
Engineering Consultation: Consult with engineering staff to evaluate software-hardware interfaces and develop specifications and performance requirements.