The Content Platform plays a key role in the eMAG eco-system as it is responsible for all the content and structure of the eMAG product catalogue. This means developing tools and applications that allow for the gathering, storing, structuring and processing of all the data required for a product to be on sale on the eMAG platform (title, description, photo gallery, specifications, filters, unique identifiers etc.)
As part of the development team, you will be responsible for projects like:
To accommodate and sustain such volumes described above we had to integrate the right tool for the right job, making the technological stack pretty complex. We are working to migrate towards a microservice architecture sustained by Docker and orchestrated by Kubernetes. Many microservices are written with PHP, using Symfony 4 as the main framework, but we also have tools written in Python and VueJs. Parallelization is made with queue Systems like RabbitMQ and Gearman and storage is made in databases like MySQL, MongoDB, Redis, and SOLR. Also, we have automation in the testing phase build upon PHPUnit and Codeception.
Design, implement and support multiple applications in the Content Platform;
Develop high-performance, reliable and maintainable code whether implementing architectural improvements;
Collaborate with other technical team members to design, implement, quickly troubleshoot and resolve any critical issues;
Stay in tune with the latest technologies; proactively identify areas for improvement and propose viable solutions.
5+ years of overall development experience using web technologies;
Extensive experience in design and development of web applications with PHP, MySQL, MongoDB;
Experience with databases like MySQL or MongoDB;
Focused on code quality and high development standards;
Automated testing (PhpUnit etc.);
Solid foundations in computer science fundamentals, object-oriented programming, design patterns, and software engineering best practices;
Analytical thinking and strong initiative;
Flexible, communicative, a real team player;
Able to work on several simultaneous projects and to adapt to a fast-evolving environment;
Framework: Zend, Symphony, Laravel, etc.
Will be a plus:
Experience with caching mechanisms (ex: Memcached, Redis) ;
Hands-on experience with parallel processing and queueing systems (Ex: Gearman, RabbitMQ etc.) ;
Hands-on experience with NoSQL database systems (MongoDB, Redis, SOLR etc.) ;
A solid understanding of High Availability, Load Balancing, Performance Tuning, Security;
Automated testing – Codeception;
Experience with provisioning tools like Puppet;
Experience with monitoring and logging tools like NewRelic, Grafana, Kibana;
Experience with container systems like Docker and Kubernetes;
Experience with Domain-Driven Design.