Website Vish Limited

Senior Frontend Developer

Role responsibilities

  • Clarify requirements and propose & execute an implementation plan (i.e. decompose “scope” into sub-components and implement them).
  • Review and approve merge requests.
  • Design and implement components and features (and refactor existing code to make it more extensible and modular) based either on feedback from discussions or mocked designs.
  • Participate in design discussions and propose and comment on implementation plans.
  • Coach and mentor others in areas of your expertise and provide guidance on best practices.

A typical week

  • Take steps to understand ill-posed and vague requirements and concretize them.
  • Design interfaces, components, and write code. Some of the relevant libraries are: NativeScript, NgRx, Angular, fp-ts.
  • Review merge requests and provide feedback either in the form of comments during a review call, or as code patches, or as written comments.
  • Approve merge requests.
  • Conduct and participate in paired sessions for programming and review.
  • Estimate work complexity and provide completion estimates. Proactively communicate with stakeholders and manage expectations in case of any unforeseen circumstances.

Candidate requirements

  • Several years (5+) of experience writing code for “production”.
  • Experience in multiple programming paradigms. Knowledge and experience (several years) of functional programming is a must.
  • Experience with (one or more of) Nativescript, Typescript, Angular, NgRX is required.
  • Experience with Git and Linux CLI is assumed.
  • Empathy, humility and personal accountability (and one who holds others accountable).
  • An individual who leads by example: by showing more than telling.
  • Experience with Functional Reactive Programming (e.g. RxJS) is an asset.
  • Experience with Test Driven Development and Property-Based Testing is definitely an asset.


  • Great attention to detail and an eye for visual incongruities.
  • Skill to infer missing, but relevant, acceptance criteria.
  • Skill at developing something in a never-before-used language or library.
  • Root cause analysis skill.
  • Skill at modular and extensible development.
  • Skill at avoiding rabbit holes.
  • Skill and experience with package managers (yarn, npm) and resolving dependency conflicts.

Who we are
Vish is changing and innovating the hair color industry. At the local level, Vish helps salons eliminate waste, manage their inventory, increase service revenue, and provide valuable insight into their color business. Our aspirations are to revolutionize supply chain management for the entire hair color industry.

Why choose us
We are a distributed team comfortable with collaborating remotely. We are opinionated on the merits of functional programming, and passionate about building things that help people and the environment. The work we do has helped hair salons reduce environmental waste and made it easier for them to stay afloat during the pandemic.

To apply for this job email your details to