It’s often to take over a web product for frontend-side from colleagues during work. When you’re on-boarding a company for a web frontend engineer role, you may find you situated in a misted forest. You may not see people or cowork with them, because there have some reasons such as they just quit the job or switch to another poducts.
In modern frontend develop conventions, there are somethings you can catch during taking over.
Node and NPM. Find out whether there has .nvmrc file in frontend repo or not. If it has .nvmrc file, content in .nvmrc means the version of Node for this repo and environment at local development use Node Version Manager to manage multiple versions of Node execution.yarn.lock file, it represents this repo use Yarn, which is another kind of node package manager, to install and uninstall packages. It also means build/compile code for dev/staging/production environments with yarn.package.json file, you can find out two important parts: dependancies and scripts:dependancies often indicates packages, library or frameworks are used in this repo such as typescript, angular, rxjs, nebular, ionic, redux, redux-observable, jest, testcafe or cypress. You can quickly understand packages environment for execution. devDependancies also often companies with that, and devDependancies shows packages only be used in a local development environment. It’s better to lock versions of packages for preventing or eliminating supply-chain attack in the future.scripts lists scripts for many purposes such as exection at local development environment, building code, and testing code automatically for dev/staging/production environments. Please make sure:
scripts do still in use?scripts are broken and need to fix? Especially for e2e testing towards different environments such as dev, staging and prodution.React ecology, redux, react-redux, redux-observable, redux-thunk, redux-saga are common packages used for centralized state management.Vue, vuex is a remarkable one.Angular, ngrx is the one.PWA or not. If it is, you need to understand how to develop, and maintain the product with PWA.service worker, please figure out resource cache policies about image, video, and ajax requestpush notification such as firebase cloud messagingwebsocket is involved in the product. If the product uses websocket as its part of functions, it often means the product require high interactivity between network intercommunications so it uses websocket for saving extra network construction overheads with respect to tradictional one-shot request-response behavior.websocket in this product.google analytics, amplitude, and hotjar.LCP, FCP, and mobile friendly, …etc. Their importances depend on what kind or target audience of a company it wants. It’s common and continuous to pursuit better scores for a company of to-customer business.datadog and sentry.