Job Details
Dinosys is looking for Software Engineers to join the foundational team of our R&D department. As part of the team at Dinosys you will have the opportunity to research, design, implement, test and maintain the next biggest IT innovation project in Vietnam.
As a Back-end Web Software Engineer, you will be able to demonstrate good communication and problem solving skills. You are self motivated and able to contribute to collaborative software projects. You will be expected to quickly learn and utilise new technologies and be a source of ideas on how emerging technologies can help Dinosys’s business. More importantly, you will have fun along the way while having the opportunity to build great software across different sectors and industries.
Key Responsibilities
- Design, build, and maintain efficient, reusable, and reliable Ruby code
- Integration of data storage solutions
- Help maintain code quality, organization and automatization
- Constantly learn and keep abreast of emerging technologies
- Contribute to the software design processes including whiteboarding sessions, workshops and prototyping
- Critique software designs and architectures
- Peer review colleagues code and identifying areas for improvement
- Provide development task effort estimates
- Conduct client requirements gathering and analysis
- Review test plans
- Follow defined development best practice including commenting and documenting code, contribute to development wikis and using source control
Job Requirements
- B.S. or M.S. in Computer Science or related engineering or technical field
- Experience with Ruby on Rails or Grape API
- Experience writing tests with RSpec/MiniTest and doing Continuous Integration is a plus
- Experience working with relational database (PostgreSQL)
- Experience setting up servers (nginx etc.) and automating deployment process (Docker, Ansible, Chef etc.)
- Experience with building beautiful and efficient APIs
- Basic understanding of front-end technologies, such as JavaScript, HTML5, and CSS3
- Solid understanding of object-oriented programming
- Strong analytical and problem solving abilities
- Strong communication and client facing skills