Developing robust, enterprise-level Backend API for Rakuten overall services, such as messenger, e-mail, and cloud storage services.
This position is in charge of Backend development for Rakuten cloud storage service.
Day-to-day work includes planning, development, and maintenance.
Key responsibilities include:
Execute each development project with good quality in a timely manner.
Design, develop and test Backend service (including quality control).
Review deliverables at each process (design, code, test cases, etc.)
Plan and Execute project release with minimal risk.
Investigation and troubleshooting.
Discover issues, includes not only tangible but also potential, in development organizations and improvement activities.
Market trend surveys and proposals for the introduction of the latest technologies.
Select and propose a sustainable architecture.
Required Knowledge, Skills, and Experience:
Bachelor’s degree in computer science or related technical discipline.
More than 5 years of experience in HTTP API development using spring framework or play framework at work.
Application development experience using databases (RDB, NoSQL).
Knowledge of professional software engineering practices and best practices for full software development life cycle, including coding standards, code reviews, source control management, continuous deployments, testing, and operations.
Sufficient knowledge about CS (Client Server) implementation such as data structure, OS, algorithm, network, etc.
Excellent critical thinking, problem-solving, and communication skills and ability to take ownership of tasks.
Strong passion for code quality and not allergic to unit tests.
Comfortable working in an Agile environment.
Be eager to help your teammates, share your knowledge with them, and learn from them.
Be open to receiving constructive feedback.
Business level Korean.
Communication level English in reading and speaking.
Experience in publishing android apps on Google Play.
Building mobile frameworks / SDKs.
Key Interface & Performance Indicator:
Junior members: Knowledge sharing, guidance, and support.
FE team members: Integration, debugging issues together.
Project Manager: Providing timely updates/raising concerns/flags for the QA topics that need attention.
Finish development tasks in a timely manner with good code quality.
Providing expertise and experience in the team proactively.
Helping and coaching other engineers and introducing new technologies which help to improve the product.