Senior Software Engineer
Apply on
Availability Status
This job is expected to be in high demand and may close soon. We’ll remove this job ad once it's closed.
Job Summary:
The Senior Programmer is responsible for leading software development projects, ensuring the delivery of high-quality code, and mentoring junior developers. This role involves designing, developing, testing, and deploying software solutions, with a strong emphasis on best practices, coding standards, and the latest industry trends. The ideal candidate will have extensive experience in software development, problem-solving skills, and a passion for creating efficient, scalable solutions.
Key Responsibilities:
- Software Development:
- Design, develop, and maintain software applications according to project requirements.
- Write clean, scalable, and well-documented code, following coding standards and best practices.
- Debug and resolve software issues, ensuring optimal performance and functionality.
- Project Leadership:
- Lead development efforts for assigned projects, collaborating with cross-functional teams to ensure timely delivery.
- Participate in project planning, providing estimates for tasks and milestones.
- Review code written by other team members, ensuring quality and adherence to standards.
- Mentorship and Training:
- Mentor junior programmers, providing guidance and support in their development tasks.
- Conduct code reviews and offer constructive feedback to improve team members' coding skills.
- Share knowledge of new technologies, tools, and best practices with the team.
- System Architecture and Design:
- Contribute to the design and architecture of software systems, ensuring they meet business requirements.
- Collaborate with the CTO and other stakeholders to define technical specifications and system requirements.
- Evaluate and recommend new technologies, frameworks, or tools that can improve development efficiency.
- Testing and Quality Assurance:
- Develop and execute unit tests to validate code functionality.
- Work closely with QA teams to identify and fix bugs.
- Participate in continuous integration and deployment processes.
- Documentation:
- Maintain comprehensive documentation for code, development processes, and software features.
- Update documentation to reflect changes and enhancements made to systems.
Requirements:
- Education: Bachelor's degree in Computer Science, Software Engineering, or a related field.
- Experience:
- Minimum 5 years of experience in software development, with at least 2 years in a senior or lead role.
- Extensive experience in programming languages such as Python, Java, C#, or JavaScript.
- Technical Skills:
- Strong knowledge of software development methodologies, including Agile and Scrum.
- Proficiency in version control systems (e.g., Git) and development tools (e.g., Visual Studio, IntelliJ).
- Experience with database management systems (e.g., MySQL, PostgreSQL, MongoDB).
- Familiarity with cloud platforms (e.g., AWS, Azure) and DevOps practices.
- Knowledge of front-end and back-end development.
- Soft Skills:
- Excellent problem-solving and analytical skills.
- Strong communication and interpersonal skills.
- Ability to work independently and as part of a team.
- High attention to detail and a commitment to delivering high-quality work.
Preferred Qualifications:
- Experience with software development for IT companies or tech startups.
- Knowledge of additional programming languages or frameworks (e.g., Laravel, Vue.Js, PHP, React, Angular, Node.js).
Job Type: Full-time
Pay: RM4,000.00 - RM7,000.00 per month
Benefits:
- Opportunities for promotion
- Professional development
Schedule:
- Monday to Friday
- On call
Supplemental Pay:
- Performance bonus
Work Location: In person