MEAN Stack DeveloperOn a day-to-day basis you will be:- Understanding logical architectures for web applications using better practice design principles.- Leading the development of web applications with the support of a small development team (for lead roles).- Utilizing CI/CD workflows using build and release automation in Azure DevOps.- Application development based on screens, documented requirements, and user stories- Assisting with third level support by driving the resolution of application defects and supporting a response to major application incidents.- Coaching other developers and sharing your knowledge and expertise within the team.- Participating in firmwide software development forums and communities to share ideas and contribute to our body of knowledge.- Actively participating in daily team stand-ups, workshops, and online technical forums.About youApplicants must be able to demonstrate the following key capabilities and behaviour:- Exceptional problem-solving and critical thinking skills, an analytical mindset and outstanding attention to detail.- Experience designing and developing javascript web applications using Node.Js, Angular 2+, CSS3, HTML5 and Javascript.- Experience developing middleware, integration and messaging systems using REST APIs and popular message bus platforms (e.G. RabbitMQ, Azure Service Bus).- Strong understanding of event-driven, asynchronous programming concepts and best practice application design principles.- Strong understanding of non-relational database design and querying by using MongoDB, Cassandra, Redis or other.- Understanding of continuous integration and continuous deployment, ideally using Azure DevOps (formerly Visual Studio Team Services).- Ability to work efficiently with remote teams using collaboration technology.- Ability to identify issues and solve complex problems as part of a team.- Ability to lead small development teams and foster strong working relationships (only for leads).- Ability to remain calm when under pressure and meet demanding deadlines.- Good written and verbal communication skills.- A proactive approach to resolving problems.Ideally, you will also have:- Knowledge of ORM/ODM like Sequelize and Mongoose.- Experience with microservices architectures and containerisation using Docker.- Experience designing, developing and automating unit tests.- Strong understanding of source code version control, including the use of Git repositories.- Experience working on projects that follow an Agile Scrum methodology.- Strong awareness of system development life cycles (SDLC).- Good understanding of relational databases such as MS SQL Server, Oracle, PostgreSQL or any other.