Position: Front End Developer (React)
Company: Helpware
Category: JavaScript
Experience required: 3y
English level: upper

Requirements:

3+ years of development experience with React, including proper and efficient usage of Hooks and classless implementations;
English Intermediate or higher;
Experience with serverless databases (Fauna DB);
Strong software engineering theoretical knowledge, good knowledge of modern systems architecture components;
Strong knowledge and hands-on experience in building reactive frontend architectures using modern libraries/frameworks;
Experience with HTML, more specifically the use of React-based derivative frameworks such as Material UI;
Experience with JavaScript, more specifically the ability to code basic algorithms in a clean, efficient, and easily followed manner;
CSS, including derivatives such as JSX and compilers such as LESS and SASS, as well as the ability to animate simple transitions;
Experience creating responsive designs, more specifically how a full desktop design should translate into a mobile design. While responsive designs will likely be provided, inferences on when to reuse and when to duplicate a component will naturally need to be made;
Experience with Salesforce will be a plus.

Responsibilities:

The FD will be following the lead of the FA in:

Prioritizing between coexisting tasks;
Deciding on the appropriate approach for projects;
Executing specific designs, when necessary.

The FD will be expected to interact with POCs in:

Reporting on the current status of the project areas the FD is working on;
Fielding questions on project areas the FD is tasked with;
Collecting requirements in specific areas, which will be assigned by the FA.

The FD will need to work independently in:

Ascertaining all possible use-cases and operational scenarios for a given requirement;
Filling in any gaps in knowledge for a given technical stack and its relevant best practices;
Staying vigilant against potential risks, pitfalls, and complications in project execution and scheduling, and escalating them to the FA in a time-appropriate manner.

Abilities and Skills:

The FD must exhibit the following in coding without fail:

Accuracy. All work products must address their stated task objectives squarely, without uncalculated nor unreported risks. This is especially important when the FD is inserted into an existing project or team: Fully understanding the existing structure before changing anything is of utmost importance;

Precision. All work products must be “pixel-perfect”, whether it is literal pixel alignments, or hexadecimal color codes, or basic code indentations. Any manifestations of “close enough” must be calculated and defendable;

Conciseness. All work products must be “minimalistic”: Easily readable, but not verbose. Whether it is a file structure, code structure, or HTML structure, any “excess” must be calculated and defendable; and

Consistency. All work products must be absolutely internally consistent. Any deviations must be calculated and defendable. This means, for example:

If a single quote is chosen over the double quote, single quotes must be used everywhere;

If components should group their import statements in a certain way, all components must use the exact same grouping, ordering, and spacing;

If font sizes should use “px” instead of “em”, there should not be even one incident of “em” anywhere in the entire project.

The FD needs to be proficient in:

React, including proper and efficient usage of Hooks;
JavaScript, more specifically the ability to code basic algorithms in a clean, efficient, and easily followed manner;
CSS, including derivatives such as JSX and compilers such as LESS and SASS, as well as the ability to animate simple transitions;
HTML, more specifically the use of React-based derivative frameworks such as Material UI; and
Responsive designs, more specifically how a full desktop design should translate into a mobile design. While responsive designs will likely be provided, inferences on when to reuse and when to duplicate a component will naturally need to be made. The FA will be available to resolve conflicting considerations, but not for hand-holding.

The FD needs to have a basic understanding in:

Color theory. For example, do not use colors that might not match each other. If the design calls for it, confirm the choice with the FA;
Accessibility for the disabled and impaired. For example, do not use font sizes lower than 12px. If the design calls for it, confirm the choice with the FA; and
Runtime efficiency. For example, while it is unnecessary to worry about the efficiency of algorithms in general, do not use something that operates at O(n2) on a dataset that can become large. If the design calls for it, confirm the choice with the FA.