Functional Programming (advanced)
Your primary responsibilities will include developing interactive web-based, mobile, and / or desktop applications using Publicis Sapient as well as industry best practices to deliver high value and quality to Publicis Sapient clients.
Responsibilities will include several of the following :
Technical end-to-end design for stories by collaborating with business analyst / product owner, technical architect, and clients.
Design and implement stories end-to-end, which includes Frontend, Backends for Frontend (BFF), Caching and also service orchestration in some cases, using best engineering practices like test-driven development, SOLID principles, and consideration of non-functional requirements like performance, scalability, security, or cloud readiness (as applicable) at a story level.
Focus on quality by implementing best practices like logging, calling out technical debt, meeting KPIs using code quality tools like SonarQube, ESLint (customize and sync with Sonar), Stylelint / Sasslint, and so on.
Hands-on with automating redundant work, like common component structure, both in terms of scaffolding as well as using the right design patterns / creating abstractions.
Mentor junior engineers in helping review code, guiding on technical decisions.
Hands-on with DevOps pipeline and able to tweak / change build / deployment pipeline as needed in the context of a module (e.
g. Jenkins / Travis / Now.sh / Gitlab).
Hands-on experience with Functional Programming (FP).
Experience working with Single Page Applications (SPA) with universal rendering capabilities and ( or Microfrontends) .
Solid understanding of React.js, its core principles - lifecycle methods, virtual DOM etc. and at least 6 12 months of hands-on experience with the same.
Understanding of one-way data flow and the Flux architecture.
Nice to have experience of implementing Security features in frontend applications, which includes adding the right security headers, CSP policies, protection against XSS click jacking etc.
Understanding of React Hooks, Suspense, Memo etc.
Different middleware implementations available for async actions in Redux like redux-thunk, redux-saga, redux-observable etc.
Hands-on experience with at least one.
Understanding of different CSS architectures that go hand-in-hand with React.js application development. Pros and cons of component-level CSS vs global and where to apply each.
Thorough understanding of Webpack bundler. Experience with configuring Webpack from scratch is a plus. Experience with Rollup, Parcel is a plus.
Hands-on experience with building Progressive Web Apps (PWAs) on any framework.
Hands-on experience with Frontend Performance Optimization especially in a React application with respect to resource loading strategy, CPU / Memory profiling on the browser.
Hands-on experience with test-driven development using Jest or equivalent. Familiar with snapshot testing, code coverage.
Experience working with utilities like Enzyme.
Experience using fluid grids, and building responsive / adaptive websites using Bootstrap etc.
Excellent speaking and writing skills for effective communication. Any demonstrated ability with blogs, speaking at conferences / meetups is a plus.