Software Engineer (CORE Team)
eMAG
Bucuresti, Romania
3 zile în urmă

The Core team has the role to help programmers and testers with their development workflows. We provide an interface in which users can manage their environments, deploy applications and collaborate with other colleagues.

Our goal is to have an always working platform that users can rely on. Our platform communicates with OpenStack over an API on which we request machine and databases creation / deletion.

Currently there are 5000 machines in OpenStack for development and testing environments. Our technology stack contains PHP (Symfony) with JavaScript on UI, Python on back-end services, Neo4j and MySQL for databases, RabbitMQ, Redis, as well as monitoring tools such as ELK, Grafana, New Relic, Sensu / Uchiwa.

The most part of the development is in Python, which we use for new microservices, syncronizations, workers, cron jobs, scripts etc.

Our architecture has some challenging points, including High Availability, Performance, Scalability, Reliability and Integrability.

We participate in trainings, presentations and we also hold our own presentations, based on our work at Core. Furthermore, we engage discussions with other teams and help them contribute to the architecture of the entire eMAG ecosystem.

If you are a problem solver in search for new challenges to be done with a great sense of cross-team collaboration and ownership, this is the job for you!

Responsibilities

  • Contributing to the Design of the system
  • Documenting the Software Architecture to fulfill product requirements with the right technical needs
  • Great Coding , by refactoring or adapting existing applications accordingly
  • Reviewing the team's work and offering valuable feedback
  • Tracking and fixing issues by Unit Testing
  • Negotiating technical debt in terms with constraints, with the help of Business Cases
  • Helping other teams to adopt our work and work smart, by offering technical support
  • Continuously improving the eMAG ecosystem, by Training other colleagues
  • Improving the process itself by monitoring the outcome and owning "the good, the bad and the ugly"
  • Requirements

  • Strong OOP skills - SOLID, dependency injection
  • Design Patterns practitioner
  • SQL databases;
  • Good with Linux in general - CentOS
  • Experience with NGINX, load balancers - HAProxy
  • Git knowledge
  • REST APIs - both client and server side
  • Message-broker knowledge
  • Will be a plus :

  • Software Architecture patterns knowledge (Service-based, Event-driven, Microservices, Micro-Kernel etc.)
  • Python (advanced) - Django, CherryPy, Flask
  • PHP - Symfony
  • JavaScript - Vanilla, React, Vue
  • Non-SQL databases, especially Graph databases - Neo4J
  • RabbitMQ, Redis
  • Docker, Kubernetes
  • Puppet, Chef
  • Agile / Scrum methodology
  • Benefits

    At eMAG, we are constantly moving forward and we love what we do. If you are passionate about your job, whether it’s offering consultancy to a customer or writing a code line, and you aim high, then you belong with us, the No.

    1 IT company to work for in Romania (according to a Biz Magazine study in 2017). We provide you with the best development programs to improve both your soft and job specific skills, but it is you who decides what you want to learn and where you want to go.

    The possibilities are endless. We know benefits are important, that’s why we provide you with a full range of them.

    Raportați această lucrare
    checkmark

    Thank you for reporting this job!

    Your feedback will help us improve the quality of our services.

    Aplică
    Email-ul meu
    Făcând clic pe "Continuă", acord nevoo consimțământ de a procesa datele mele și de a-mi trimite alerte prin e-mail, așa cum este detaliat în policyApplicația de confidențialitate a lui neuvoo. Pot să-mi retrag consimțământul sau să mă dezabonez în orice moment.
    Continuă
    Formular