What are the responsibilities and job description for the Software Developer position at Mudrasys?
Job title : Software Developer
Job duties :
- Software Development :
- Collaborate with stakeholders to gather and analyze user requirements for software applications.
- Design software solutions, including system architecture, user interfaces, and database structures.
- Write clean, efficient, and maintainable code using programming languages (such as Java, Python, C , or JavaScript) and development frameworks.
- Develop and maintain software applications, including coding, debugging, testing, and deployment.
- Implement software development best practices, such as version control, code reviews, and unit testing, to ensure code quality and reliability.
- Continuously optimize software performance, scalability, and security.
- Technical Problem Solving :
- Analyze complex technical problems and propose innovative solutions.
- Debug and troubleshoot software issues, identify root causes, and implement effective resolutions.
- Perform software maintenance tasks, such as bug fixing, patching, and upgrading, to ensure application stability and performance.
- Collaboration and Communication :
- Collaborate with cross-functional teams, including product managers, designers, and quality assurance professionals, to develop and deliver software solutions.
- Participate in Agile development methodologies, such as Scrum or Kanban, and contribute to sprint planning, stand-ups, and retrospectives.
- Communicate effectively with team members and stakeholders to provide status updates, gather feedback, and address concerns.
- Assist and support other team members, such as junior developers or interns, by providing guidance and mentoring.
- Software Documentation :
- Create and maintain technical documentation, including software requirements, design specifications, and user manuals.
- Document code changes, updates, and new features for future reference and collaboration.
- Write clear and concise comments within the codebase to facilitate code understanding and maintainability.
- Continuous Learning and Professional Development :
- Stay updated with industry trends, new technologies, and programming languages.
- Participate in training programs, workshops, and conferences to enhance technical skills and knowledge.
- Experiment with new tools, frameworks, and methodologies to improve software development practices.
- Quality Assurance and Testing :
- Collaborate with quality assurance professionals to ensure software meets quality standards and requirements.
- Develop and execute test plans, test cases, and automated test scripts to validate software functionality, performance, and security.
- Conduct code reviews and participate in peer programming to identify and address code issues and maintain code quality.
- Customer Support and Maintenance :
- Provide technical support to end-users, troubleshoot software issues, and address user inquiries or concerns.
- Maintain and update existing software applications by adding new features, enhancing functionality, and improving user experience based on user feedback and evolving requirements.
Degree Requirement : This position requires, at a minimum, a bachelor's degree in computer science, computer information systems, information technology or a combination of education and experience equating to the U.S. equivalent of a Bachelor's degree in one of the aforementioned subjects.
Work Schedule : Full Time, 40 Hours / Week