What are the responsibilities and job description for the Software Engineering position at Compunnel Inc.?
Expectations From This Role
Act creatively to develop applications by selecting appropriate technical options.
Optimize application development, maintenance, and performance by employing design patterns and reusing proven solutions.
Account for others' developmental activities.
Assist the Project Manager in day-to-day project execution.
Interpret the application, feature, and component designs to develop them in accordance with specifications.
Code, debug, test, document, and communicate product, component, and feature development stages.
Validate results with user representatives.
Integrate and commission the overall solution.
Select and create appropriate technical options for development, such as reusing, improving, or reconfiguring existing components while creating new solutions for new contexts.
Optimize efficiency, cost, and quality.
Influence and improve customer satisfaction.
Influence and improve employee engagement within the project teams.
Set FAST goals for self.
Typical Performance Measures
Adherence to engineering process and standards (coding standards).
Adherence to project schedule/timelines.
Number of technical issues uncovered during the execution of the project.
Number of defects in the code.
Number of defects post-delivery.
Number of non-compliance issues.
Percent of voluntary attrition.
On-time completion of mandatory compliance trainings.
Performance Areas
Code as per the design.
Define coding standards, templates, and checklists.
Review code for team and peers.
Documentation
Create/review templates, checklists, guidelines, and standards for design/process/development.
Create/review deliverable documents, including design documentation, requirements, test cases, and results.
Configure
Define and govern configuration management plans.
Ensure compliance from the team.
Test
Review/create unit test cases, scenarios, and execution.
Review the test plan created by the testing team.
Provide clarifications to the testing team.
Domain Relevance
Advise software developers on design and development with a deeper understanding of the business problem being addressed for the client.
Learn more about the customer domain and identify opportunities to provide value addition to customers.
Complete relevant domain certifications.
Manage Project
Support the Project Manager with inputs for the projects.
Manage delivery of modules.
Manage complex user stories.
Manage Defects
Perform defect RCA and mitigation.
Identify defect trends and take proactive measures to improve quality.
Estimate
Create and provide input for effort and size estimation.
Plan resources for projects.
Manage Knowledge
Consume and contribute to project-related documents, SharePoint, libraries, and client universities.
Review reusable documents created by the team.
Release
Execute and monitor the release process.
Design
Contribute to the creation of design (HLD, LLD, SAD), architecture for applications, features, business components, and data models.
Interface With Customer
Clarify requirements and provide guidance to the Development Team.
Present design options to customers.
Conduct product demos.
Work closely with customer architects for finalizing design.
Manage Team
Set FAST goals and provide feedback.
Understand the aspirations of team members and provide guidance, opportunities, etc.
Ensure team members are upskilled.
Ensure the team is engaged in the project.
Proactively identify attrition risks and work with BSE on retention measures.
Certifications
Obtain relevant domain and technology certifications.
Skill Examples
Explain and communicate the design/development to the customer.
Perform and evaluate test results against product specifications.
Break down complex problems into logical components.
Develop user interfaces and business software components.
Use data models.
Estimate time and effort resources required for developing/debugging features/components.
Perform and evaluate tests in customer or target environments.
Make quick decisions on technical/project-related challenges.
Manage a team, mentor, and handle people-related issues in the team.
Maintain high motivation levels and positive dynamics within the team.
Interface with other teams, designers, and other parallel practices.
Set goals for self and team. Provide feedback for team members.
Create and articulate impactful technical presentations.
Follow a high level of business etiquette in emails and other business communication.
Drive conference calls with customers and answer customer questions.
Proactively ask for and offer help.
Work under pressure, determine dependencies, risks, and facilitate planning while handling multiple tasks.
Build confidence with customers by meeting deliverables timely with a quality product.
Estimate time and effort of resources required for developing/debugging features/components.
Knowledge Examples
Appropriate software programs/modules.
Functional and technical designing.
Programming languages – proficient in multiple skill clusters.
DBMS.
Operating Systems and software platforms.
Software Development Life Cycle.
Agile – Scrum or Kanban Methods.
Integrated Development Environment (IDE).
Rapid Application Development (RAD).
Modelling technology and languages.
Interface Definition Languages (IDL).
Broad knowledge of the customer domain and deep knowledge of the subdomain where the problem is solved.
Education: Bachelors Degree
Act creatively to develop applications by selecting appropriate technical options.
Optimize application development, maintenance, and performance by employing design patterns and reusing proven solutions.
Account for others' developmental activities.
Assist the Project Manager in day-to-day project execution.
Interpret the application, feature, and component designs to develop them in accordance with specifications.
Code, debug, test, document, and communicate product, component, and feature development stages.
Validate results with user representatives.
Integrate and commission the overall solution.
Select and create appropriate technical options for development, such as reusing, improving, or reconfiguring existing components while creating new solutions for new contexts.
Optimize efficiency, cost, and quality.
Influence and improve customer satisfaction.
Influence and improve employee engagement within the project teams.
Set FAST goals for self.
Typical Performance Measures
Adherence to engineering process and standards (coding standards).
Adherence to project schedule/timelines.
Number of technical issues uncovered during the execution of the project.
Number of defects in the code.
Number of defects post-delivery.
Number of non-compliance issues.
Percent of voluntary attrition.
On-time completion of mandatory compliance trainings.
Performance Areas
Code as per the design.
Define coding standards, templates, and checklists.
Review code for team and peers.
Documentation
Create/review templates, checklists, guidelines, and standards for design/process/development.
Create/review deliverable documents, including design documentation, requirements, test cases, and results.
Configure
Define and govern configuration management plans.
Ensure compliance from the team.
Test
Review/create unit test cases, scenarios, and execution.
Review the test plan created by the testing team.
Provide clarifications to the testing team.
Domain Relevance
Advise software developers on design and development with a deeper understanding of the business problem being addressed for the client.
Learn more about the customer domain and identify opportunities to provide value addition to customers.
Complete relevant domain certifications.
Manage Project
Support the Project Manager with inputs for the projects.
Manage delivery of modules.
Manage complex user stories.
Manage Defects
Perform defect RCA and mitigation.
Identify defect trends and take proactive measures to improve quality.
Estimate
Create and provide input for effort and size estimation.
Plan resources for projects.
Manage Knowledge
Consume and contribute to project-related documents, SharePoint, libraries, and client universities.
Review reusable documents created by the team.
Release
Execute and monitor the release process.
Design
Contribute to the creation of design (HLD, LLD, SAD), architecture for applications, features, business components, and data models.
Interface With Customer
Clarify requirements and provide guidance to the Development Team.
Present design options to customers.
Conduct product demos.
Work closely with customer architects for finalizing design.
Manage Team
Set FAST goals and provide feedback.
Understand the aspirations of team members and provide guidance, opportunities, etc.
Ensure team members are upskilled.
Ensure the team is engaged in the project.
Proactively identify attrition risks and work with BSE on retention measures.
Certifications
Obtain relevant domain and technology certifications.
Skill Examples
Explain and communicate the design/development to the customer.
Perform and evaluate test results against product specifications.
Break down complex problems into logical components.
Develop user interfaces and business software components.
Use data models.
Estimate time and effort resources required for developing/debugging features/components.
Perform and evaluate tests in customer or target environments.
Make quick decisions on technical/project-related challenges.
Manage a team, mentor, and handle people-related issues in the team.
Maintain high motivation levels and positive dynamics within the team.
Interface with other teams, designers, and other parallel practices.
Set goals for self and team. Provide feedback for team members.
Create and articulate impactful technical presentations.
Follow a high level of business etiquette in emails and other business communication.
Drive conference calls with customers and answer customer questions.
Proactively ask for and offer help.
Work under pressure, determine dependencies, risks, and facilitate planning while handling multiple tasks.
Build confidence with customers by meeting deliverables timely with a quality product.
Estimate time and effort of resources required for developing/debugging features/components.
Knowledge Examples
Appropriate software programs/modules.
Functional and technical designing.
Programming languages – proficient in multiple skill clusters.
DBMS.
Operating Systems and software platforms.
Software Development Life Cycle.
Agile – Scrum or Kanban Methods.
Integrated Development Environment (IDE).
Rapid Application Development (RAD).
Modelling technology and languages.
Interface Definition Languages (IDL).
Broad knowledge of the customer domain and deep knowledge of the subdomain where the problem is solved.
Education: Bachelors Degree
Director, Software Engineering - Data Engineering
Cox Automotive -
Atlanta, GA
Director, Software Engineering - Data Engineering
Cox -
Atlanta, GA
Software Engineering Specialist
Amdocs -
Alpharetta, GA