Senior Software Engineer - Geylang
About the job
We are seeking a highly motivated Software Engineer to join our team. In this role, you will be responsible for designing, developing, testing, and maintaining software solutions that support business operations and objectives. You will collaborate with cross-functional teams to understand requirements and translate them into effective technical solutions, ensuring quality, security, and scalability.
Role Overview
As a Software Developer/Engineer, you will play a key role in delivering high-quality software applications. You will work on the full software development lifecycle, from requirements analysis through deployment and maintenance. Your technical expertise will ensure that solutions are robust, efficient, and aligned with organizational needs.
Job Responsibilities:
- Software Design & Development
- Gather and analyze requirements in collaboration with business and technical teams.
- Design and develop new software applications or features based on specifications.
- Write clean, efficient, and well-documented code following best practices.
- Testing & Quality Assurance
- Conduct unit and integration testing to ensure the functionality, security, and performance of applications.
- Troubleshoot bugs and issues, providing timely resolutions.
- Perform code reviews and participate in peer evaluations.
- Maintenance & Support
- Maintain and enhance existing applications, ensuring system stability and performance.
- Assist in deploying applications and updates in production environments.
- Provide technical support and documentation for end-users and stakeholders.
- Collaboration & Communication
- Work closely with project managers, analysts, and other developers to deliver projects on time.
- Communicate technical concepts effectively to non-technical stakeholders.
- Follow organizational standards and contribute to continuous improvement initiatives.
Job Requirements:
- Bachelor's degree in Computer Science, Information Technology, or related field.
- Proven experience in software development across multiple projects or modules.
- Strong understanding of software development principles and practices.
- Ability to work both independently and as part of a team in a fast-paced environment.
- Knowledge of programming and scripting languages.
- Understanding of software development lifecycle and version control.
- Awareness of security, performance, and scalability considerations.
- Analytical thinking and problem-solving skills.
- Good communication and collaboration abilities.
- Adaptability and eagerness to learn new technologies.