Associate Software Engineer
The Associate Software Engineer applies subject matter knowledge in applications development, possessing well-developed skills in design, development, testing, debugging and implementing software applications or specialized utility programs in support of end users' needs on platforms. He/She supports regular updates and recommends improvements to existing applications. He works under limited supervision to effectively deal with unfamiliar issues, and follows recommended coding standards and secure-coding principles to avoid security vulnerabilities. He provides technical support to the quality testing teams. He works in a team setting and is proficient in programming languages required by the organization. He is familiar with software development tools and standards, as well as the relevant software platforms on which the solution is deployed on. The Associate Software Engineer is a keen learner, and able to apply structured, analytical thinking to develop applications. He is a strong team player, who communicates his ideas and gets along with others easily.
Skills and Competencies
Technical Skills & Competencies
Generic Skills & Competencies
Critical Work Functions and Key Tasks
• Participate in discussions with stakeholders to understand user requirements
• Conduct requirements analysis based on user requirements
• Prepare requirements documentation, descriptions of interfaces, and functional and non-functional requirements
• Assist in writing proposals and communication materials to pitch ideas
• Propose new technologies for cutting edge platform development
• Assist in the installation and use of tools for a project’s designated design strategy and methodology
• Assist in architectural design tasks associated with use of standard notations, diagramming techniques, models, and patterns
• Apply selected software design pattern to the design of software components or modules
• Participate in software design reviews
• Carry out static analysis tasks to evaluate design quality
• Assist in development and use of simulation and prototypes to evaluate software design quality
• Perform integration testing as part of the integration process
• Collect standard measures of code quality and size
• Generate codes and systems from models
• Create and execute unit tests for delivered codes
• Achieve test coverage goals set by project and organisation standards
• Identify unit and integration testing success and failure criteria
• Adhere to software test plans
• Assist with the development of the test plans and test cases
• Implement the test environment and unit test cases, and integration and system test cases
• Collect and analyse test execution results
"• Follow recommended coding standards and secure-coding principles to avoid security vulnerabilities
• Adhere to project standards in the collection of security assessment metrics
• Perform code reviews to identify security vulnerabilities"