We are looking for a developer 
with real-world experience building scalable applications in Node.js. 
The developer will join our growing and multicultural engineering team 
in Barcelona, Spain. 
 
 
 We want you to help us transition our architecture from a 
traditional ASP.NET monolithic application server to a modular 
collection of Node.js GraphQL API micro apps and services. 
 
 
 Key Responsibilities 
 - Code, test,
 document and maintain the Learnlight Platform, mainly as an application
 server developer (ES6 on Node.js, Express, GraphQL) and database 
developer (PostgreSQL, SQL, plSQL), but occasionally as a front-end 
developer (HTML, CSS, ES6, React). 
- Support the development 
team in various disciplines that go beyond programming, as needed, 
including creating ad-hoc reports, participating in deployments, or 
helping the QA team. 
- Participate, as required, in the design and planning of future functionality of the platform. 
Desired Skills and Expertise Culture and Language 
 - Able to work 100% of the time en English. Spanish and other languages an optional plus. 
- Experience abroad or in multicultural environments preferred. 
- Enthusiasm, initiative, commitment, with the ability to learn independently. 
- Ability to legally work in Spain. 
Technology (required) 
 - Experience with the design 
and development of modern web applications, including the general 
concepts of authentication, authorization, encryption, transactions, 
state, logging and serialization. 
- Real-world experience building scalable applications in Node.js and related technologies. 
- Experience
 with JavaScript and its idiosyncrasies using ES6 syntax and idioms, 
particularly with regards to asynchronous programming. 
- Experience
 with relational database technologies, concepts and languages, 
including creating and updating schemas and writing optimized queries 
and stored procedures. 
- Fundamental Windows and/or Linux server
 concepts, including command-line scripting, networking, firewall 
management, security patching, resource monitoring, logging, etc. 
- Knowledge of C# and .NET framework fundamentals, including the CLR, BCL, ASP.NET MVC/API and ADO.NET. 
Technology (preferred) 
 - Experience with other programming languages, frameworks and programming paradigms. 
- Experience with PostgreSQL, GraphQL and their ecosystems. 
Education 
 - Either a computing degree or 2+ years of experience in the areas of responsibility mentioned above. 
Technology Background 
 The Learnlight Platform is a 
Learner Management System (LMS) that manages many all aspects of 
language a skills training by all the actors involved: learners, 
trainers, content creators, corporate clients, and administrators. 
 
 The current platform was created in 2007 using the best 
practices at the time and has been updated along the years. It is 
currently a monolithic application divided into 3 tiers: web front-end 
(HTML5, JS, CSS), application server (ASP.NET MVC5 + API 2), database 
server (PostgreSQL 9.5). 
 
 We are currently starting a full redesign of the platform 
architecture which will break it into several smaller applications and 
micro-services. Key changes include moving into a Single Page 
Application (SPA) model in the front-end, driven by React and using 
accessible and reactive layout frameworks, all interacting with a pure 
GraphQL API server implemented in Node.js