Senior React Developer

About

The construction industry is composed of a majority of SMEs that build our cities. In spite of the very important work they do, these SMEs operate with very thin margins and often struggle financially : they have to provide work and pay for materials upfront, face fierce competition and get paid late, to such extent that 10.000 of them go bankrupt every year in France alone.

The financial management of construction projects is very complicated and yet, 70% of SMEs in the construction industry still use Excel to manage their business ! 🤯

Graneet aims to help construction SMEs improve their financial management and boost their margins by giving them access to visibility and transparency on their business, in real time.

In practice, their clients use Graneet to create and follow up on their quotes, generate and control their invoices, and monitor their margin in real time. They recover a peaceful management of their construction projets by accessing dashboards that display all the key indicators of their business and by collaborating with their entire team within the same platform. 🙌

Graneet addresses 100.000 companies in France only, and will expand to Europe where construction SMEs face the same issues. 🇪🇺

Job Description

About the tech team 🕹

At the moment our tech team consists of 4 great people and will double in size over the next 6 months. This growth aims at bringing new functionalities to the very core of the Graneet platform, and deliver more high value features to our clients around 3 major topics:

  • Keep track of new projects opportunities and issuing quotes
  • Create project invoices easily conforming to the specifics of the construction legislation
  • Manage expenses and allocate them per project to monitor the margin and profits made

Our code base is tested and relies on a monorepo which features:

  • React for the frontend + Chakra UI and Storybook for components
  • Rollup + Webpack for bundling the front
  • Node (NestJS + TypeORM) for the backend APIs
  • PostgreSQL for our database
  • Docker for containers

DevOps-wise our CI is automated via GitLab and CleverCloud services, our French host. This allows us to provide a zero downtime deployment to our customers. AWS services (such as Lambda, EC2, S3, SQS, …) also cater a few more specific needs.

Here at Graneet we value quality and are eager to iterate and improve our dev-flows and processes. We are used to spending 50%+ of our time on conception and review, furthermore we apply the principles of the Lean methodology in order to track issues and reduce waste.

Job description

As Graneet’s Senior React Developer, you will have a key role in building and maintaining the product, as well as training other devs and helping the whole team to grow smoothly. Let’s dig into what your position entails:

Delivery

  • You set out and implement pixel-perfect and performing UIs
  • You ensure a sane scalable architecture and structure of the frontend projects
  • You suggest, implement and/or supervise needed refactors so our tech debt stays to a minimum at all times
  • You make sure the product stays well documented

Quality / User experience

  • You ensure all new features are properly tested
  • You take part in covering more existing code with technical tests
  • You define, follow and push forward our quality standards
  • You get how important a great UX is to our customers and get involved with the product team to improve it to its best

Communication / Management

  • You are active in leading code review and see it as a great tool to spread knowledge across the whole tech team
  • You plan and give peer-programming sessions, and train other teammates as needed
  • Along with the product team you study feasibility of a design/functionality, and bring constructive criticism
  • You estimate time/complexity of any given task and can explain it to non-tech people
  • You write out your deliverables in English

Organisation

  • You accompany the team’s growth and participate in each new onboarding/recruitment
  • You take part in the team’s life and you come up with ideas to bring it to its best level 🥂

Preferred Experience

  • You need to be fluent in French
  • You have at least 4 years of experience in frontend development, mostly spent on React which hides no secrets from you
  • You are very familiar with TypeScript, Redux, Webpack (and/or Rollup) !
  • You had successful experiences with other programming languages / frameworks which gives you an open mind as to adequate solutions
  • You are eager to create pixel perfect, dynamic, robust and performing UIs
  • You know what atomic design and loosely coupled code are, and you understand what are their benefits
  • You are curious by nature and the simple idea of the very odd fiddle with backend code isn’t tripping you out already 😁
  • You are goal oriented and like to get things done the right way
  • You have an analytical mindset and are able to break down a problem into smaller ones easier to tackle
  • You have had a positive experience as lead frontend and you have at heart to bring the tech team to embrace your vision
  • It is important for you to share your knowledge and wish to be part of the exciting journey that is a young and dynamic tech startup like Graneet !

Bonus points ✨

  • You have a repo where you host personal projects, awesome!
  • TDD et BDD are tools you use on a daily basis
  • You have experience in maintaining mono repositories
  • You know and apply Lean principles

Benefits 🥳

  • Competitive salary
  • Employee Stock Options : All our team members own a part of Graneet !
  • Access to trainings on demand
  • Participation to "Pass Navigo" (or equivalent compensation : 🚶‍🚴)
  • Participation to lunch expenses (Swile card)
  • Super nice offices in the 11th district of Paris !

Also, you will find here the top 10 reasons to join Graneet right now

Recruitment Process

  • Introduction call (30 min)
  • Interview with Raphaël - CTO (1h)
  • Technical exercices (remote) + Debrief (30min)
  • Physical interview with all founders (1h)

Additional Information

  • Contract Type: Full-Time
  • Location: Paris, France (75011)
  • Experience: > 4 years
  • Occasional remote authorized