Being responsible for end to end software development lifecycle (design, develop, deploy, monitor, repeat)
Design and develop solutions for web server services
Write code that can be well designed, testable, and efficient using the best software development practices
Collect, improve specifications, requirements based on technical needs
Design, implement, and optimize relational & non-relational databases
Can create, manage software documentation.
Responsible for maintaining, expanding, scaling up our applications
Work together with Product Team to design, develop and implement complex features
Self-organize under scrum methodology to collaborate and deliver features to customers
Implement features with strong awareness of Reliability, Scalability, and Security
Mentor and collaborate with other backend engineers
Perform regular Code Reviews
Create, Plan, and Execute Initiatives that align with company's goals
What are we looking:
Candidates must possess at least a Bachelor's Degree in Computer Science, Information Technology,Engineering (Computer, Telecommunication), Engineering (Electrical, Electronic, Mechatronic), or Mathematics.
At least 2 years of working experience in the payment company
Proficient in OOP, SQL, Functional Programming is a plus
Have experience of using some RDBMS especially MySQL and PostgreSQL
Experience using Golang as main programming language at least 2 years
Familiar with continuous integration tools like github action or Jenkins
Experience on using and maintaining some web server application like Apache, NGINX, etc, is a plus point
Experience with creating API based web app with proper authentications (RBAC, ABAC)
Experience and understanding in the importance of implementing automated testing(unit testing and integration testing)
Knowledge of version control systems such as Git or BitBucket, branching mechanism, pull request
A commitment to writing understandable, maintainable, and reusable software
Systematic problem diagnosis, creative problem solving skills, strong willingness to grow
Able to design, understand and execute complex feature based on design created based on UML or C4 format
Able to mentor and collaborate effectively with other Engineer
Strong understanding of good programming principles, architecture, and Design Patterns
High awareness on Reliability, Security, Performance, and Scalability on Feature level
Familiar with agile software development and its respective tools
Experience working for SaaS or B2B company is a plus