Core Software Engineer

Engineering Braga, Portugal


Description

THE ROLE

We are looking for a person to provide foundation services/frameworks to be used by other engineering teams and work with your fellow architects to discover new ways to improve our world class ecommerce platform’s underlying technology.

If you are ready to embrace new exciting challenges, have the desire of continuously gather and share knowledge, and apply it in a practical way then we want to hear from you.

WHAT YOU'LL DO

  • Develop and manage foundation services, applications and frameworks used by multiple platforms and engineering teams.
  • Work with architects to search and research new technologies.
  • Provide operational support for kick-starting technical projects and validate technical solutions.
  • Support operational auditing of platforms.
  • Stay up to speed with all backend and web technologies, software architecture principles and design patterns;
  • Knowledge on performance and security topics;
  • Understanding of the full development lifecycle with emphasis on software quality processes.
  • Design simple solutions to complex business problems assuring availability and performance.
  • Work with the following technologies: Apache Cassandra, Neo4j, Redis, MongoDB, Asp.net Core, Kafka, RabbitMQ, ActiveMQ, Identity Server, OpenID Connect

WHO YOU ARE

  • You are passionate about solving large-scale engineering challenges;
  • Eager to learn and share knowledge;
  • Solution driven mindset;
  • You have good communication skills and you are a team player;
  • You also have attention to detail and ability to assimilate, sort through and aggregate complex information quickly and effectively;
  • A professional with a minimum of 3 years of professional experience as a developer engineer;
  • Proficient in C# or similar object oriented programming language;
  • Knowledgeable of best practices, methodologies and design patterns for writing applications;
  • Knowledgeable of SOA and service communication using RESTful APIs;
  • Proficient in using unit testing frameworks;
  • Experienced in developing large scale distributed applications;
  • You have excellent teamwork and communication skills (Portuguese and English);
  • Problem solver and proactive;
  • Having personal projects in any of this related points are also a plus.