Senior Software Engineer - remote

CV Partner
Posted 4 years ago
TL;DR
  • Senior Software Engineer required with experience in multiple languages and frameworks (Some of: Ruby, Rust, AWS, React, Vue, TypeScript, Clojure)
  • Comfortable with full-stack, whole-lifecycle development
  • Make a big difference in a small, profitable, non VC-backed SaaS company
  • Full or part-time remote or work from one of our offices in Oslo, London, Stockholm or Copenhagen
  • CV Partner is seeking a Senior Software Engineer to join our development team to take an active role in shaping our engineering culture and building out our new platform.
The role
Since its inception in 2012 the main codebase has been a Rails app that’s become large and unwieldy. Over the last few years we’ve found the limitations of the system and have started to move to a microservice architecture based around event-sourcing and CQRS. 

Along with the event-sourcing platform we’re also building new APIs to drive the frontend and provide more support for our customers and their integrations. We’ve chosen GraphQL to drive the React-based frontend and will build a new REST API for our customers.

As a senior engineer you will help us build out this platform and develop functionality in new microservices. We’re fairly open to which technologies are chosen and have a variety running in production (including Ruby, Rails, Rust, TypeScript, JavaScript, Clojure, React and Vue) so you should be comfortable picking up new languages and frameworks quickly. We don’t expect you to be an expert in all of these as long as you’re happy to learn new things. Recently we have been writing more and more new code in Rust due to the language features and compile-time guarantees it provides, so prepare yourself for battles with the borrow-checker if that is new to you. 

We lean heavily on AWS and are moving towards serverless solutions such as DynamoDB and Lambda, so having the experience to choose the right technology for the task at hand is paramount. Almost all of our stack is defined in CloudFormation so any experience YAML-wrangling is beneficial. We also have started to develop against cloud environments using helm and kubernetes so any experience in this area would be beneficial.

Working in a small team you will participate in the full software lifecycle from story analysis to development, frontend, testing and deployment as well as setting up any monitoring and alerting necessary. You’ll have a large degree of autonomy with time set aside both for customer-focussed work and developer-driven work.

The next phase of growth will be to start bringing mid-level or junior engineers into the team, so you should be happy mentoring those with less experience and when the time comes, we'd value your input into the hiring process. 

We're pretty laid-back when it comes to flexible working so you’ll have the opportunity to work from home full-time or part-time. As a company, we are distributed across four countries already so most comms are through slack or video call. We have offices in Oslo, London, Copenhagen and Stockholm that you can work from and twice yearly company gatherings (Covid permitting) for you to get to know your teammates better.
Responsibilities
  • Develop features for the existing CV Partner application
  • Develop the event-sourcing system and platform tools
  • Help design and build new services
  • Convert existing functionality to use the new platform
  • Work closely with other teams to maintain and enhance the security of CV Partner’s systems
  • Build internal tools to support business processes
  • In the future: Mentor junior or mid-level developers and potentially lead a small team
Future challenges
  • Break up the current application into smaller services
  • Refactor the front-end code, improving the engineering principles around code organisation and testing
  • Design an effective interview process for junior and mid-level hires
  • Automate parsing of CVs and Case Studies - potential for machine learning
What we are looking for
  • Knowledge in some of the following (Rust, Ruby, JavaScript, ElasticSearch, Redis, Clojure)
  • Experience in designing microservice architectures
  • Enthusiasm to learn new tools and technologies
  • Someone with good generalist knowledge: front-end;web development;databases (SQL or otherwise), DevOps;system architecture
  • Linux, git, Github knowledge
  • Bonus: Event-sourcing/CQRS experience
  • Bonus: Front-end expertise
Benefits / package
Location: London, Oslo, Stockholm, Copenhagen

Flexible working / part-remote (with close-to-home co-working)

Pension contribution

25 days holiday

Competitive salary

Weekly team lunch