Software Engineer
About this position
Responsibilities
Software Development
• Gather and draft technical requirements, identify technical user stories and software requirements specifications that serve as the build-to specification for development
• Design, code, test, and maintain software, systems, and components using appropriate programming languages and technologies.
• Conduct software integration with external interface development (e.g., API, Webhooks, or communication paths from different platforms, applications, and databases).
• Implement clean, efficient, and well-documented code following software development best practices and coding standards.
• Develop and execute unit tests, perform code reviews, and participate in quality assurance activities to ensure software reliability, performance, and scalability.
• Assisting software design activities, including creating technical specifications, system architecture, and database design to meet project requirements.
• Create and maintain technical documentation, including system specifications, user manuals, and operational guides.
Software Maintenance
• Identify and resolve technical issues and bugs in software through debugging, troubleshooting, and root cause analysis.
• Investigate and resolve software defects and issues, providing timely support to minimize system downtime.
• Continuously monitor and enhance existing applications to improve performance, functionality, and user experience.
• Identify and address performance bottlenecks, optimizing code and infrastructure to maximize application speed and efficiency.
Requirements
• Bachelor Degree Information Technology, Computer Science, or Engineering
• Min. 3 years experience in relevant roles
• Have programming knowledge and skill using Golang
• Have knowledge for clean code, design pattern, and best practice so the code can be easy to understand, extend, and refactor.
• Have database knowledge (MySql, PostgreSQL, MongoDB, etc) and caching (redis)
• Have a good versioning knowledge (Github, Gitlab, etc.)
• Have a good API knowledge
• Have knowledge CI/CD using github actions
• Familiar with container or kubernetes