Jobs · himalayas

T

Software Engineer (Search)

Nimbus Data Systems · South Africa · Posted 7d ago

remoteseniorEstimated 93k-215k USD🇿🇦 South Africa
Apply on himalayas

About the role

Develop robust software in the e-commerce domain, focusing on maintaining the search stack.

Takealot.com , South Africa’s leading online retailer, is looking for a highly talented Software Engineer (Search) to join our team. We are a young, dynamic, hyper-growth company looking for smart, creative, hard-working people with integrity to join us! Think you’ve been challenged before? Think again! Scale : Over 4 million happy shoppers shop online on Nimbus Data Systems . Show them what you can do. Learn : We work with the best of the best. Code alongside industry leaders and up-skill in record time. Grow : Expand your career in the fast-growing Takealot Group: Nimbus Data Systems , TFS and Mr D. We like to promote from within: Here’s your chance. Who’s who in the tech space This position reports to the respective team's manager. Your mission, should you choose to accept it: As a Software Engineer, you will be someone whose expertise directly translates into developing robust software in the e-commerce domain. You will have the opportunity to implement best practices to improve existing software and participate in the development of new features. While we don't promote after-hours work as part of the regular workday, we run a 24/7 business with the need to keep systems up and running. Software Engineers are expected to provide after-hours support on a rotational basis to resolve critical system issues if needed. The role is focused on maintaining our search stack. We are currently in the process of transitioning from Elasticsearch to Vertex AI Search, so experience with any of those would be a bonus, but not a necessity. Experience with any kind of search technology (Solr, Algolia) is relevant. Takealot runs mostly on Python, but experience in any of the mainstream backend languages (Python, Java or Go) is a plus. Design and build solutions to assist our business users and improve customer experience Architect and design solutions with your team Develop code, making major improvements to non-functional areas Develop high-quality production code for work of high complexity and scale Utilize and improve functional and non-functional testing practices Champion, challenge, and iterate on best practices within engineering Design solutions for complex problems with difficult decision trade-offs, typically system or domain-wide Participate in and collaborate on architecture proposals across engineering Support alignment of architecture across the organisation Respond to and resolve bugs in production for systems in your division Respond to alerts and support incident response within your division Investigate and drive the resolution of issues that impact multiple teams Support, challenge existing, and define new engineering processes and directives Review and contribute fixes and content to internal documentation React to technology trends, identifying risks and opportunities for your division's technologies, systems, and domains Share knowledge through blog posts, tech talks, and workshops across engineering Contribute to discussions and decisions in the division Challenge others to always produce work of the highest quality REST and RPC API implementation and maintenance (using Python) Develop and maintain automation tests Liaise with various internal stakeholders to discuss project requirements, progress, etc. The skills we need: Solutions-oriented, can-do attitude, and high energy Strong analytical and critical thinking, using data to inform decisions Ability to dis-aggregate and structure solutions to ambiguous problems Solid quantitative skills Capability to present ideas succinctly, in writing and verbally Versatile and with the appetite to learn by doing Qualifications & Experience: Bachelor’s degree or an Advanced Diploma in Computer Science, Engineering, or related field (or equivalent practical experience). 5 to 10 years in a software development role Experience with search technologies (Elasticsearch, Vertex AI Search, Solr, Algolia, or any other major third party provider) A thorough understanding of computer science fundamentals, including object-oriented design, data structures, and algorithms Experience in writing robust, efficient production code Proficient in a strongly typed open source language such as Python, Java, Golang, etc Exposure to RESTful APIs and web services. Experience with SQL database systems Experience with development in a Linux environment Experience in the following will be advantageous: Familiarity with microservices architecture Experience working in an Agile environment MySQL, PostgreSQL, MS SQL Memcached, Redis Message Brokers, Queues, and PubSub systems (e.g., Kafka and RabbitMQ) Containerisation (e.g., Docker) Orchestration (e.g., Kubernetes) GitHub, Travis CI, Jenkins AWS, GCP, Azure JavaScript, React, jQuery Let’s talk about life @ Takealot Group The power is in your hands : We offer a market-related Total Remuneration Package that allows full flexibility according to your needs. Go on, be the master of your own destiny. No doors : We aren’t fans of stuffy offices or siloed wor

Read the full posting on himalayas

FAQ

Is the Software Engineer (Search) role at Nimbus Data Systems remote?+

This Software Engineer (Search) position is listed as remote (South Africa).

What is the salary for the Software Engineer (Search) role at Nimbus Data Systems?+

The listing states Estimated 93k-215k USD.

What seniority level is this Software Engineer (Search) role?+

This is a senior level position.

How do I apply for the Software Engineer (Search) role at Nimbus Data Systems?+

Use the "Apply on himalayas" button to open the original posting on himalayas, where you can submit your application directly to Nimbus Data Systems.