Principal Software Engineer, Backend
CAROUSELL PTE. LTD.
Permanent, Full Time
S$16000 - S$18000
Carousell is a classifieds marketplace that makes selling as easy as taking a photo, buying as simple as chatting. Launched in August 2012, Carousell began in Singapore and is now one of the world's largest and fastest growing marketplaces. We have market presence in eight markets (Singapore, Hong Kong, Malaysia, Philippines, Indonesia, Taiwan, Myanmar, and Vietnam) and three technology development centres in Singapore, Taiwan and India.
Carousell is backed by leading investors, including Telenor Group, Rakuten Ventures, Naver, and Sequoia Capital. The Carousell marketplace has a diverse range of products across a variety of categories, including cars, lifestyle, gadgets and fashion accessories. As a team of passionate individuals working together to solve meaningful problems, there is so much more for you to discover in a career with Carousell.
The Verticals team is one of the product development teams in Carousell that takes care of our Autos, Property and Services categories across all our markets. This team is always at the edge of building and experimenting with specialised user experiences with innovative features. We are a team of experienced product development engineers and we welcome people with a good mixture of technical excellence and a keen eye for product to join us.
- Work closely with product, design and a team of engineers across multiple platforms to release features and run experiments.
- Design, architect and build distributed, scalable backend services together with other backend engineers in the team.
- Drive collaboration between backend and frontend engineers in the team to scope and plan for features and experiments.
- Communicate and collaborate with other Principalle Engineers and Senior Engineers in the organization, getting alignment and buy-in to propose changes to other areas of our systems where necessary.
- Lead and mentor backend engineers in the team and organization, imparting technical knowledge, industry best practices and leadership skills.
- Initiate and lead technical projects, or propose changes to existing processes, that will improve the quality of our codebases and systems, clear out technical debt and improve our developer productivity.
- Acquire domain knowledge relevant to the Verticals, and use this knowledge coupled with technical expertise to solution and build innovative features for our users.
- Degree in Computer Science, Software Engineering or other equivalent degrees/experience
- More than 10 years of total working experience, including 6+ years in software development
- 2+ years of experience working in a product development team as a Lead Engineer or equivalent technical leadership role.
- 2+ years of experience working with engineers in client platforms (iOS, Android, Web), or have 2+ years experience as a client engineer professionally.
- Mentored and coached engineers effectively in their technical growth.
- Strong English communication skills, with the ability to write good technical documentation and proposals.
- Have experience in a role where cross-team communication was necessary or of importance.
- Experience in building large, scalable distributed systems with good understanding of microservices architecture and associated principles.
- Excellent knowledge of RDBMS and object caches such as PostgreSQL, Memcached, Redis and knowledge of how to design, tune and optimise SQL queries and caching strategies
- Experience with TDD/BDD and agile methodologies
Closing on 18 Sep 2021