1. Software Development:
§ Write, test, and debug code for new software applications or features under the guidance of senior engineers.
§ Participate in the design and implementation of software solutions, following established coding standards and best practices.
§ Develop, review, and optimize code for performance, scalability, and maintainability.
§ Should integrate software components into a fully functional software system that operates seamlessly as specified in the Software Requirements Specification (SRS).
§ Should analyse application functionality and suggest improvements to enhance efficiency and user experience.
2. Collaboration and Teamwork:
§ Work closely with team members, including senior developers, project manager, designers etc to understand project requirements and contribute to solutions.
§ Participate in regular team meetings and discussions, such as daily stand-ups, sprint planning, and code reviews.
§ Provide feedback on others code through code reviews and accept constructive feedback to improve personal coding practices.
§ Guide junior developers by providing technical training, mentorship, and support.
§ Identify areas for process improvement and contribute to implementing best practices.
3. Testing and Quality Assurance:
§ Create and execute unit tests to verify that code meets requirements and is free from errors.
§ Collaborate with quality assurance (QA) team members to troubleshoot and resolve issues and bugs.
4. Documentation:
§ Write and maintain documentation for code, technical specifications, and workflows to facilitate collaboration and future maintenance.
§ Update internal knowledge bases with insights and solutions that can help other developers.
5. Debugging and Troubleshooting:
§ Identify, diagnose, and fix bugs in the codebase.
§ Use debugging tools and techniques to resolve issues and ensure applications run smoothly.
Collaborate with support teams to address software issues reported by users
6. Version Control and Code Management:
§ Use version control systems like Git for code management, ensuring proper commit messages and adherence to branching strategies.
§ Collaborate with team members on code repositories and participate in code and functionality reviews.
7. Learning and Skill Development:
§ Stay up-to-date with industry trends, new technologies, and best practices in software engineering.
§ Take the initiative to deepen technical knowledge and skills, such as learning new programming languages or frameworks relevant to the company’s technology stack.
§ Develop a strong understanding of the specific domain or industry the company operates in.
8. Project and Task Management:
§ Use in-house project management tool (Galaxy ALMS) to track and manage assigned tasks, ensuring they are completed within deadlines.
§ Provide updates on task progress and escalate any blockers or issues that may affect timelines.
9. Agile and Project Lifecycle Participation:
§ Participate actively in agile practices, such as sprint planning, retrospectives, and backlog grooming.
§ Work with project manager and stakeholders to refine project requirements and prioritize tasks effectively.
In summary, an Associate Software Engineer is expected to contribute directly to development projects, collaborate effectively with team members and progressively take on more complex coding tasks. This role requires initiative, a willingness to learn and the ability to contribute meaningfully to both team and project objectives.
Pay: ₹350,135.65 - ₹593,398.50 per year
Benefits:
- Health insurance
- Provident Fund
Work Location: In person