Role- Lead UI Developer
Location: Charlotte, NC (Hybrid)
Job Description:
· We’re looking for recent experience with pure React+Typescript, with best practices from React 18 (like no Classical components or Classical HOCs). Frameworks on top of React (like NextJS) aren’t what we’re looking for.
· No frameworks. NextJS and other frameworks “on top” or React are more a minus, than plus.
· Candidate should have recent experience with Redux and Redux Sagas specifically (not alternatives like Zustand and other state management libraries). It can be ReduxJS Toolkit (also known as RTK), but I will get deep into what it solves and why, and how it works. We’re not leveraging RTK too much in our code base.
· Candidate should have experience with working/creating/maintaining basic components (buttons, dropdowns, layouts, etc) without any 3rd party library such as Chakra, MUI, Antd, or others. They ought to be experienced with “styles-in-JS” pattern using either styled-components, or emotion/styled. Preferably including advanced patterns like custom themes, theme mapping and wrappers, mobile responsive components, things like these.
· Experience with latest data routing from react-router-dom is a plus, but not a deal breaker
· Experience with mono repositories will be a plus (NX workspace is a huge plus), but not a deal breaker
· When I’m sure they’re familiar enough with things listed above, I WILL ask about architecture layering, it’s “why” and “how”.
· Practiced ownership over their engineering decisions, and being exposed to the autonomy and decision making outside of “what CSS style to apply here”
Required “soft skills”:
· Strong communication skills
· Should understand and being able to explain what they’re doing and how it works.
· Good understanding of a higher-level architecture and be able to have reasonable discussion about engineering and architecture conformity of the technical decisions they make.
· Able to take long term consequences into consideration when making decisions.
· Familiarity with technical debt, consequences of having it, and ideas how to avoid having it.