Core Software Engineer

Technology Braga, Braga


Description

Who we are

Farfetch is unlike anything in the world of fashion and technology.
Our mission: to revolutionize the way the world shops.
To do it, we need innovators. People who challenge convention and dare to dream.
We’ve gone from a start-up to a billion dollar business. But we’re not done yet. Far from it.
Be bold.
Be brilliant.
Together, we can be extraordinary

We have rapidly grown into a truly global company since our launch in 2008 and we’re continuing to grow. Our family now includes partner boutiques and brands across Europe, North and South America and Asia; we demonstrate our ‘Think Global’ value in everything we do.

We are a global team of over 1,500 people and have offices based in London, New York, L.A., Porto, Guimaraes, Lisbon, Sao Paulo, Shanghai, Moscow, Hong Kong & Tokyo.

We are a company with an entrepreneurial spirit and innovative culture. We are positive, passionate and live our values: Be Human, Be Brilliant, Todos Juntos, Be Revolutionary, Think Global and Amaze Customers day to day.


The team:

Our world class Technology team is at the core of what we do. The team helps support the running of the current business and explores new and exciting technologies that keep Farfetch truly revolutionising the industry. Split across 3 main offices- London, Porto and Lisbon, the tech hub is the fastest growing team working across all touch points, Web, Mobile and Instore. The team is committed into turning the company into the leading multi-channel platform. 

The role:

As a Core Software Engineer in the architecture group you will both 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.

We love hearing from you and want you to be as ambitious as we are, but before applying please ask yourself the following…

  • Is this role a good match for me and my long term goals? We want to really know why you have chosen this career.
  • Do I have all the skills and experience required for this role? Be realistic. We will only consider applications that demonstrate relevant skills or the potential to match the role requirements.
  • Spell Check. As simple as it sounds make sure your application is to the highest standard. You will be surprised at how many applications we receive with spelling mistakes on them.

We are committed to equality of opportunity for all staff, applications from individuals are encouraged regardless of age, disability, sex, gender reassignment, sexual orientation, pregnancy and maternity, race, religion or belief and marriage and civil partnerships.