Job Title : Software Engineer II
Solvei8 (pronounced solve-it) is a one-stop integrated factory cloud solutions provider for the apparel and footwear industry, under the parent company Buyogo AG. With innovation, agility, and customer-centricity at the core, Solvei8 is focused on providing solutions that optimize factory processes, increase visibility, and lead to better data-driven decisions.
We follow microservice architecture with the server-side code modelled as multiple microservices written in Java or Scala. We use Kafka and Flink for communication and in-stream processing. You’d get to work on relational (Postgres), no-SQL (Mongo) and big-data DBs (HBase, Druid).
Requirement :
- 2-6 years of professional experience in software development
- Proficiency in Java or any other JVM language like Scala, Kotlin etc.
- Strong understanding of algorithms and data structures, and oriented programming principles
- Understanding of micro-services and low-level system design principles.
- Experience with server frameworks like Play and Spring.
- Experience in querying and using relational (like postgres) and non-relational databases (like mongo).
- Experience in using messaging queues like Kafka or rabbitMQ.
- Familiar and well equipped with standard design patterns and coding principles.
Responsibilities :
Designing, developing, testing, and deploying high-quality software that meets customer requirementsTake ownership of product / feature end-to-end for all phases from the development to the production.Follow best engineering practices while developing.Review code and provide feedback for improvements if needed.Decide on the trade-offs between technical and design approaches.Mentors other engineers.Good to have :
Experience with other databases like Apache Druid, Redis, Cassandra or Elasticsearch.Having functional programming language understanding.Having understanding of distributed systems.Experience with testing frameworks like JUnit.Experience in product based companies.Graduates from top tier colleges would be preferred.In addition to the above requirements, the candidate should be a team player who can collaborate effectively with other members of the team and be willing to learn and adapt to new technologies and techniques.