DevOps Engineer

Job description

“Segmentify” is an e-commerce personalization platform that helps online retailers to optimize their conversion rates by enabling them to deliver a unique shopping experience for each visitor. Segmentify tracks each individual visitor’s behaviour in real-time and makes them smart product recommendations by using in-house developed AI technology.

 

We have a dynamic and passionate compact team dedicated to create a SaaS solution to create a better and personalized web experience to visitors and customers. We are selected as one of the 25 Machine Learning Startups to Watch In 2018 by Forbes magazine. We are one of the fastest growing start-up in AI based e-commerce solutions with multiple investment rounds and 5 offices in globe.

 

We build Segmentify using new and powerful web stack (Java, Cassandra, MongoDB, Ignite, Kafka and React JS) and always watch for new trends and technologies.


Role

We are looking for a DevOps Engineer who will help us to build the world’s most intelligent personalisation platform for online retailers and guarantee best customer experience. You will be responsible for creating and maintaining distributed architecture on cloud, deploying product updates, maintaining a continuous integration & delivery infrastructure. The Ideal candidate should be passionate about providing world-class customer service with a sharp focus on implementing and deploying a reliable, robust, high quality software CI/CD pipeline. You should have experience working in complex multi-platform environments and be familiar with release engineering practices and tools.


You will collaborate with the development and product team to create and support cloud infrastructure for Segmentify core products and new modules & features, create and maintain continuous integration & delivery, monitor and manage testing and live environments. Help us build a culture and practice that leads to improved product quality and cohesive collaboration.

Job requirements

  • Experience in Linux environment with a good understanding of Linux fundamentals and internals including filesystems, modern memory management, threads, processes, etc.
  • Understanding of large-scale distributed systems in practice, including multi-tier architectures, application security, monitoring and storage systems
  • Understanding of the TCP/IP stack, internet routing and load balancing
  • Good programming skills in one of C/C++, Java, Python or Go, and ability to pick up new ones as needed
  • Application framework lifecycle maintenance and monitoring experience such as Spring
  • Experience developing Continuous Integration and Continuous Deployment (CI/CD) pipelines.
  • Experience with Git and configuration management processes
  • Experience in setting up and administering SQL DBs such as PostGRE and NoSQL DBs such as MongoDB and/or Cassandra
  • Familiarity with Microservices is a plus
  • Familiarity with Docker/containers in general is a plus


Responsibilities

  • Ensure high availability and scalability of our systems in planning, setup and maintenance, including regular update cycles with a focus on minimal downtime
  • Develop and maintain distributed architecture solutions of our production & QA environments
  • Maintain and improve the CI/CD process for our development infrastructure
  • Engineer for performance and administer for availability of our Linux based servers


Tech Stack

  • Java, Spring Boot, Tomcat
  • JavaScript, ReactJS
  • Python
  • Gitlab, Jenkins, Sonarqube, Nexus
  • Apache Ignite
  • PostgreSQL
  • Solr, ElasticSearch
  • Cassandra, MongoDB, Redis, 
  • Kafka
  • KVM, Libvirt, Docker and Google Cloud
  • Prometheus, InfluxDB, Grafana, Nagios