Senior Software Engineer, Backend Technologies

Job description

Segmentify is an e-commerce personalization platform helping 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 behavior in real-time and offers smart product recommendations by utilizing in-house developed AI technology.


We have a dynamic and passionate compact team dedicated to creating a SaaS solution to boost eCommerce revenue. 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-ups in AI based e-commerce solutions with multiple investment rounds and have offices in 3 countries. Our main target for 2021 is to expand our customer base from all over the world and be the market leader in Europe, especially in the UK.


We build Segmentify using new and powerful web stack (Java, Spring Boot, Cassandra, MongoDB, Apache Ignite, Kafka, React.js, Webpack, Redux and JavaScript ES6) and are always on the watch-out for new trends and technologies.



Role


We are looking for top-of-the-class Java back-end developers who are prominent with scalable and distributed web applications. You will be responsible for developing RESTful services to handle high volume online retail traffic. You will collaborate with the product team to deliver the modules and features throughout the development life cycle. You will be responsible for building, testing, debugging, and troubleshooting clean, web and security standards compliant Java code to deliver real-time high available services.

You will be actively learning new backend technologies and methodologies to provide better and superior real-time service to Segmentify's global customers.



Job requirements

  • BSc or MSc degree in Computer Science, Computer Engineering, Software Engineering or related disciplines from reputable universities

  • 2-5 years of Java Development experience (Spring and RESTful APIs)

  • Proficient with RDBMS and ability to write SQL (PostgreSQL is preferred)

  • Experience with In Memory Database and Caches (Apache Ignite and Redis are preferred)

  • Scalable and distributed web application experience (Reactive programming and Spring Reactor experience is preferred)

  • Knowledge of design patterns and experience in implementing them in object oriented fashion

  • Hands-on experience with messaging queue frameworks (Kafka is preferred)

  • Good verbal and written communication skills and ability to convert user stories into full functional interfaces and APIs

  • Proficient in using Git version control and branching methodologies

  • Proficient in English (TOEFL or IELTS certification is preferred)

  • Ability to handle multiple tasks simultaneously and meet deadlines


Bonus

  • Demonstrated experience for modern Push Technologies including Apple Push Notification Service (APNS), Firebase Cloud Messaging (FCM), Web Push Protocol (VAPID) is a big plus

  • NoSQL database experience (MongoDB and/or Cassandra is preferred)

  • Experience in developing with microservice architectures

  • Experience with Akka and constructing message-driven applications is a plus

  • Cloud platform development experience (Google Cloud is preferred) is a plus