Giter Site home page Giter Site logo

asmt-javascript-questions's Introduction

QUESTIONS FROM COMMITTEES

Common

  • What motivates you to be a senior software engineer? (What is your goal to become a senior software engineer?) (What motivates you to get the next level?)
  • What does it mean to be a Senior Specialist? Please explain new challenges and responsibilities.
  • What is the difference between L2 and L3 engineer?
  • What does it mean to be a Senior Specialist? Please explain new challenges and responsibilities.
  • How do you know that you are ready to become D3? What's the difference? What will change?
  • What challenges or big goals would you like set for yourself being Cheif Software Engineer.
  • Describe your biggest achievement that you can be proud of?
  • Please, name the phases of Software Development Life Cycle?
  • Talk about SDLC in context of your project.
  • What was your most challenging task?
  • What sources did you use for keeping you knowledge up to date and learning new thing?
  • How do you keep yourself up-to-date?
  • What FED technologies do you consider that will be very popular in the nearest future. How do you exploit and promote them?
  • Self-development - ways, techniques, practices, etc.
  • What concrete problems have you faced so far? Mention a few examples. What would you do if you can't find the solution?
  • Please describe your problem solving skill a bit more. What do you exactly do if you face a problem?
  • What Front End technologies have you used recently on your projects?
  • Have you faced any failures in your development career and if you had please describe the worst one and what you've learned from it?
  • Your biggest fail during FE developer experience?
  • Who is key developer in your understanding? What tasks does key developer deal with?
  • Could you explain a role of Key Developer on a project?
  • What is a recent technical challenge you experienced and how did you solve it?
  • Could you let us know how you usually follow the latest technologies? Can you mention a few example you just read about and being excited to make a try with?
  • What internal EPAM initiatives do you know? In which of them you participate?
  • From the grow, you played the Key Developer role, so what in your opinion is the main difference between simple and Key developer roles in a project?
  • What was the most challenging task you have ever faced?
  • Let's talk a bit about your key developer experience. What is the most challenging thing you've ever faced in this role? Maybe some task or occasion
  • Great mistake during the overall experience?
  • Could you share your biggest fail in your work experience? What have you learned from it?
  • How do you manage your time?
  • You used to work with C, Java, Python. Could you compare ecosystems of those languages with JavaScript? highlight some cons pros? npm vs other
  • What is difference between async programming and async messaging

Code Quality

  • What is a good code in your opinion?
  • What is the Code Quality? How to measure the Code Quality on a project? What processes you may suggest that improves the Code Quality?
  • What principles do you follow to write a good code?
  • What are your criterias of Good Code that can be merged during review process?
  • In general, could you please describe the role of automation in development process?
  • You come to an existing project and you see no code guidelines established there and you see mess and mixture of styles which is difficult to read and understand. Describe your actions.
  • What practices/approaches do you know which helps to improve code quality?
  • What are the signs of the bad code?
  • How often do you refactor code? What are the reasons which force you to refactor code?
  • Imagine the situation that you come to an existing project and see no coding guidelines established there and see issues coming out of this. What would you do?
  • Exactly what kind of documentations did you create for your project?
  • What do you mean by a good code?
  • How do you maintain code quality in your project?
  • What development methodology do you use in your project?
  • What you don't like in your project? How can you improve this?
  • How do you understand that the code is good/bad?
  • What is Temporal Coupling?
  • What code metrics (software metrics) do you know?
  • Do you measure cyclomatic complexity of the codebase?
  • Can you tell some negative parts of using SOLID principles?
  • Which ESLint plugins do you use on your projects? Why these?
  • What are the differences between code quality and product quality?
  • What types of testing (related to non-functional requirements) do you know?
  • What practices/approaches do you use to improve quality?
  • What do you consider to be a quality code? When you review the code, which sections of the code do you pay special attention to?
  • How do you improve the quality of your work? How can you be sure that your work is well done?
  • How else could you control code quality?
  • How to ensure in a good code quality if you a sinlge Front end developer on the project and no one in the team could review your code ?
  • What is the Code Quality? How to measure the Code Quality on a project? What processes you may suggest that improves the Code Quality?
  • What principles do you follow to write a good code? What can be considered as a tech debt?
  • How the pre-commit & post-commit hooks can help?
  • What tools are you using on your project?
  • How do you define code quality? What makes code good?

Code Review

  • Could you please describe your code review process in your project, pros and cons?
  • Which code review tools you know/use? Your criterias for good code.
  • What is code review in your opinion?
  • How you'll setup code review for team of 5 devs with different skillsets?
  • Have you ever practiced code review on your project? How would you setup code review process from scratch?
  • Code review - have you tried it, what is it for, is it helpful? What are the shortcomings & benefits of it?
  • Which code review tools you know/use? Your criterias for good code.
  • What is your checklist when you are doing code review?
  • Different types of code review, pre-push, post-push (pros/cons)?
  • How do you provide codereview. List of things to look for during CR. Name some of code smells
  • Have you ever participated in code review? Why do we need it? How do you perform code review?
  • Why Code review process so important?
  • How to make effective Code review?
  • What are best practices for CR?

Testing

  • Name the features of good quality unit tests.
  • How you can use tests while re-writing legacy code?
  • What are the differences between TDD and BDD approaches. Which one do you prefer? What JS frameworks for TDD/BDD you know? What is
  • What tools are you using to test ability of your site to look equally in necessary browsers?
  • What's the difference between unit, functional, acceptance, and integration tests? Which problems these solves?
  • Best practices of testing (unit, e2e)?
  • What are benefits of using TDD?
  • How do you test your code?
  • How will you convince your team member to start using TDD? What are the benefits of TDD?
  • What is your Unit Tests covering process? What is acceptable Code Coverage level?
  • What is White and Black testing? What is better?
  • Could you, please, give definion of optimal test coverage? Which procentage will you call the best one for particular project.
  • What is the Testing Pyramid?
  • Can you describe what are the main differences between Jasmine and Mocha?
  • How you can be sure that code is really tested? How we can prevent cheating on unit test? What does 100% code coverage means? (AAA, Mutation testing)
  • Except increasing project bug-sustainability, what are other advantages of using unit tests? Name examples, of unit tests mistakes, that freshers usually do?
  • What kind of tests do you know?
  • What is acceptable Code Coverage level?
  • What levels of software application testing do you know? Could you please describe them?
  • Unit test vs e2e? Coverage at you project? How private methods can be tested?
  • Low test coverage 80%? What effort did you put into increasing to 90-95%? How to understand that your coverage is good? Things you do not need to test?
  • What is the main Advantages & Disadvantages of Unit testing. What does AAA pattern means?
  • What are the key attributes of a good unit test?
  • What's the difference between unit, functional and E2E tests?
  • Could you, please, give definion of optimal test coverage (black box testing)? Which procentage will you call the best one for particular project.
  • Do you know any advanced unit testing techniques (property based testing, mutation testing)?

JS / DOM

  • What ways of managing asynchronous code do you know?
  • What is the event delegation? What type of events we have in (browser) JavaScript? What is the idea of event delegation?
  • What is WeakMap/Symbol/Set?
  • Why do we need iterators in js (ES6)? How we can use them?
  • What const is for, your opinion?
  • What is Temporal dead-zone?
  • What is the difference between for .. in loop vs for .. of loop?
  • What is the difference between Array.from() and Array.of()
  • What's the difference between Map and WeakMap data structures?
  • What's the difference between WeakMap and WeakSet? What's their difference from Map and Set?
  • If I define 2 functions with the same name in the same scope, which one will be executed?
  • Which types of inheritance implementation in JS you know/use?
  • Could you expain all ways how to inherit one object from another?
  • closure
  • observable
  • Do you know what is temporal dead-zone in ES2015?
  • ES5 / ES6 new features || language supersets (e.g. SASS, TypeScript)
  • What was the most interesting crossbrowser issue you came across? How did you fix it?
  • What techniques you can use to avoid callback hell?
  • Please talk about DOM event handling (capturing/bubbling).
  • Please explain the event bubbling process in JS.
  • What is the difference between preventDefault and stopPropagation event methods?
  • What were your pitfalls for delivering project audit while you were contributing to the FED CC
  • Browser caching possibilities?
  • What's your experience with in-browser storages? IndexedDB? What type of db is indexeddb? What are the differences from RDBs and NoSQL dbs?
  • Experience in building mobile, desktop, tv or any other different from the browser environment applications?
  • Common dev environent setup? What dev environment should include for FE app?
  • Talk about build process/CI on your project. Why Grunt/Gulp/... is used?
  • Let's imagine you need to implement CI on a new project. What will be your actions?
  • What build tools are you using in your projects? Why?
  • Could you please describe an ideal project for you? Which processes, workflow, tools would you use?
  • What are disadvantages of webpack?
  • Explain the JavaScript Event Loop.
  • Explain difference between microtask and macrotask within an event loop context.
  • What is asynchronous programming, and why is it important in JavaScript?
  • What's the difference between an "attribute" and a "property" in DOM?
  • Could you describe the pitfalls you may face with in development for mobile devices? (What are the difficulties you may face?) (Is there a special aspects of developing applications in JavaScript for mobile (browser) and for desktop (browser) ?)
  • What is the difference between arrow function and function expression?
  • Can you compare the managing async code by promises and by Observables (pros and cons)?
  • What is strict mode? what are the advantages and disadvantages to using it?
  • Could you name the disadvantages of transpiling to javascript?
  • Is there multi-threading in JavaScript?
  • What is immutability? Why do you need it? How can you ensure immutability in JavaScript?
  • Please, talk about ES2015 modules, what ES2015 modules exports? What is the difference between commonjs modules and ES2015 modules?
  • As you know ES6 classes are just syntactic sugar. What happens in reality when you create class A? What happens when you want inherit class B from class A?
  • In javascript, there is an Event Loop. Why does it need, what kind of goal does it resolve? Could you please describe how does event loop work?
  • In ES2015 there is a new primitive type Symbol, what opportunities does it provide for customization of objects?
  • Are you following news about latest escmascript specification, can you tells us about new features in language?
  • Describe the difference between <script>, <script async> and <script defer>
  • How do you understand Closure in JavaScript?
  • How do you understand Prototypal inheritance and how does search of properties work in prototype chain?
  • Explain what is iterator and how we can create and use it.
  • Explain pros and cons of animation with CSS and Javascript?
  • Do you know something about Proxies? For which purposes they can be used?
  • "5" == 5 is it good or bad?
  • Which are ES6 features you like?
  • What transpilers do you use?
  • What are the pros/cons of JS? Compare to other langs, if poss. What benefits/downsides did ES6 bring in?

CSS / UX / Browser

  • What is specificity in CSS?
  • What CSS preprocessors you know/use? Pros and cons?
  • What Cross-Origin Resource Sharing (CORS) techniques do you know?
  • How BEM structure helps you to write better code? What kind of best practice do you know, if we are talking about BEM?
  • Can you compare css isolating technique, e.g. css-in-js, tailwind, css modules
  • What css methodology is used in this framework (tailwind)?
  • Can you compare BEM and Atomic CSS in scope of development using the components approach?
  • What types of CSS layout modules do you know? Just name it.
  • How do you position two blocks… 50/50.
  • Can you compare BEM and Atomic CSS in scope of development using the components approach?
  • What does * { box-sizing: border-box; } do? What are its advantages?
  • What is the difference between responsive and adaptive web design? What would you choose and why?
  • Describe the methods of building web UI: Progressive Enhancement and Graceful Degradation / Regressive Enhancement?
  • What is a11y? Why is it important? As a company who sell VR sets, do I need to care about a11y? Why? As teamlead on a new project, when will you consider esteblishing some a11y on the project? How would you do it?
  • Are you familiar with Web Accessibility requirements?
  • What is the accessability? Describe the accessability principles.

TypeScript

  • Compare TypeScript vs Flow, what features they provide, what problems they solve?
  • Have you ever used flow in your project? Could you please tell us about Flow. What are benefits of its usage?
  • What are the disadvantages of TypeScript?
  • What are benefits of using TypeScript?
  • How we can increase the speed of TypeScript compilation process? Can we sacrifice typechecking?
  • TypeScript: difference between interfaces and types?
  • What are generic types in Typescript?

Node.js

  • What is an error-first callback?
  • Describe what a stream is in Node.js?
  • How many types of streams exist in Node.js?
  • Describe how method pipe works.
  • The difference between nextTick and setImmediate?
  • Can you name some points from twelve factor application methodology?
  • What is the preferred method of resolving unhandled exceptions in Node.js?
  • How does Node.js support multi-processor platforms, and does it fully utilize all processor resources?
  • How do you understand non-blocking and async functions? Is there a difference between them?
  • Can you name the rules of interoperability between CJS and ESM modules?
  • What are the advantages and disadvantages of doing npm shrinkwrap or package lock?
  • You mentioned in your grow a migration from express.js to koa.js. I would like to understand better the motivation between the change between both technologies, because both solutions are quite similar and share lots of middlewares let's say. And as well, during the migration what were the challenges and how did you overcome those.
  • Can you name few use cases where Node.js will not be a good option to develop your service?
  • If somebody come to you and say instead of nodejs we should use Java/Go/Rust. What would you tell them?
  • How can we write e2e tests for an API and which tools can we use for that?
  • Could you share some experience about deploying Node.js services? Also please name few Do and Don'ts for this process.
  • You developed some feature. It has been tested and release to Prod. After release you realized that another feature stopped working completely. Your actions?
  • Which parts of data you store in which type of storage based on what requirements? (sql dbs vs redis vs buses (rabbit mq) vs others (mongo, neo, etc)
  • How would you make sure when you integrate with frontend team (other backend team) that you guys build the same bridge?
  • Have you heard about customer based contract tests?
  • Are there any specific challenges in GraphQL regarding to authorization?
  • I'm implementing an API that returns some data from a raw text file. The txt file have few megabytes and for know I need process it in every request. How can I improve this workflow? (cache, read file using streams, batch processing)
  • Imagine that you are populating this file (at some point you have not enough memory to keep it there).
  • Which approach better streams or generators (pros and cons)?
  • About static code analysis tools, what you use and why these tools?
  • What caching strategies do you know? (memoization, etc.)
  • What is difference between replication and sharding?
  • How do you test serverless applications?
  • Do you have any experience in performance optimization?
  • How can we found causes of exceptions with memory leaks?
  • Have you an experience catching memory leaks in production? (What if memory contains sensitive data)
  • Let's say you've been given a task to find the weakest places in your solution/process to improve them. What will you do?
  • Imagine you are leaving a project where you was responsible for some big complex undocumented area. Your teammates are not competent in this area and you should make knowledge transfer for them. Your steps?
  • You mentioned Kafka for a messaging pattern, did you considered other options like RabbitMQ? Still in the messaging topic what was the challenge to you implementing this pattern?
  • How we can debug an application that implement this messaging pattern? Which tools we can use for this?
  • TA team, asked to you to interview and evaluate a candidate that is potentially a senior based on TA pitch. But during the interview you saw that the candidate take a lot of time for answer questions that should not be a problem for a senior developer. How did you conduct the interview after realizing that the candidate is more Junior than Senior?
  • A new project is about to start and you're selected to be the Key Developer, the client provide just few basic information about the project and they asked you to start picking some technologies to the project. Initially it will be just some CRUD to serve a mobile client. What is the stack that you select for this first draft and why?
  • You started with MongoDB after you realized that your data is more relational, did you continue with MongoDB?
  • Have you heard about left-pad incident in nodejs ecosystem? What can you do as developer/architect to prevent to fall into this trap?
  • Let's says that you have node application, and some indirect dependency (3-4th level) has critical vulnerability which recently discovered. How you could solve this?
  • How do you think, when the team should update the version of the framework to the newer one?
  • What will you do if you feel that your competency is not enough to finish the assigned task in estimated time?
  • Could you please describe how EventLoop phases work and the difference between nextTick() and setImmediate()?
  • How can we organize auth for services in microservices architecture?
  • What alternative to NPM do you know? What are its benefits?
  • What is the preferred method of solving unhandled exceptions in Node.js?
  • What general practices do you use for debugging when building Node.js applications?
  • What the most advantage features you have used from node.js platform?
  • What is an advantage for streams in node.js?
  • How async work is handled by node.js platform? Async development: Event loop, libUV, EventEmitter.
  • What experience do you have with node.js backend frameworks? Imagine you have a greenfield project, how are you are going to choose the framework for it?
  • Let's imagine I am a junior, explain me how nodejs works with concurrent requests? (Does nodejs up another one thread, how exactly under the hood how its working)
  • Let's say you need to build a high available microservice with real small downtime percentage, what tactics you will choose to achieve that?
  • Have you ever faced with containerization or something like this?
  • AWS Secret Manager. Why do we need this?
  • Explain to junior what is the difference between http and https, and why do we need SSL certificates? Does such certificates protects from some kind of attacks?
  • What is serverless architecture? What is the dark sides of serverless architecture?
  • AWS: What is the difference between SNS and SQS?
  • When we should use SNS, (why we should use it), for example we have a bunch of lambas, API gateways, etc.
  • Can you name advantages of using design first for API development, what is the benefit of using Swagger (using swagger rather than just coding)?
  • You need to store logs from several services in database, and base on this data later, you will build reports for user activities, what kind of database you will choose?
  • What are the advantages of using a worker thread vs a child process?
  • Can you mention three popular Node.js frameworks?
  • What is Crypto?
  • What would you use to open a two-way, real-time connection with a client over HTTP?
  • Have you ever had experience with scaling node processes?
  • What is the behavior of NodeJS process for two (or more) concurrent requests? What kind of tasks does not suit to NodeJS? Why?
  • What kind of streams are exists in nodejs?

Programming Paradigms

  • What programming paradigms do you know?
  • What are the pros and cons between these two paradigms: functional programming and object-oriented programming?
  • Composition over onheritance - what is inheritance, what is composition and when to use each?
  • Explain difference between classical OOP inheritance and prototype inheritance in JavaScript.
  • Could you please explain, how inheritance works in JS to your granny?

Browser internals / Performance optimization.

  • Possible ways to speedup your javascript code execution time? Hidden classes? try/catch?
  • What is hardware acceleration?
  • What do you mean by performance optimizations?
  • How do you usally deal with perfomance issues?
  • What kind of perfomance issues do you know?
  • Which tools you use to trace them?
  • Which techniques do you know or applied to solve memory leaks? Describe some of your personal experience in solving such issues.
  • What is the memory leak? What are the reasons of memory leaks? What kind of coding errors can cause them?
  • What tools do you use while improving performance?
  • How did you know that the performance improved?
  • Which memory leaks have you ever found and what tools did you use to find them?
  • Which technices you now or applied to solve memory leaks? Describe some of your personal experience in solving such issues.
  • How do you understand that you need to improve performance of your application? How do you convince client that you need to do this.
  • How would you improve website load time / performance?
  • Imagine you have table and there are hundreds columns and thousands of rows. What kind of optimization techniques can be applied?
  • What general optimization techniques do you know?
  • Parallel threads on FE. Have you worked with them?
  • What are the downsides of working with web workers?
  • What the difference between asynchronous and parallel threads?
  • Could you please describe in details what performance techniques have you applied for your project?
  • How do you achieve lazy loading of the modules?
  • What about the first load time for SPA and MPA applications?
  • Have you had any caching issues within your application?
  • Let's imagine situation, your customer is saying that animation is slow how you can prove him that it does not?
  • How to measure performance? How can we improve performance in reactjs what techniques do you know?
  • What are best practices of high performant animations?
  • Do you have experience in perf optimizations? Could you describe the most challing case you deal with?
  • What caching strategies do you know? In what cases should we use caching? In what we should not?
  • Web page rendering process. What is the critical rendering path?
  • Describe full rendering process of a webpage starting from entering url in address line.

Security

  • Same origin policy, CORS.
  • What are the techniques that can help to avoid the same origin policy?
  • Different types of XSS?
  • How do you prevent XSS?
  • Content Security Policy headers values, name few examples?
  • How would you initiate manual security code review of Node.js applications?
  • Let's says that you have node application, and some indirect dependency (3-4th level) has critical vulnerability which recently discovered. How you could solve this?
  • When you are working with the SPA application what are the signs that you need use state container (like Redux in React)?
  • What does immutable mean to you?
  • What kind of attack do you know? Why do w need HTTPS? Difference between symmetric and asymmetric encryption?
  • Web Security - XSS/CSRF
  • What strategies do you use to keep your applications secure.
  • How do you usually do security check of your code?
  • How do you usually do to security your application?
  • What is JWT, how it differs from session based authentication?
  • What is CSP (Content Security Policy)?

Architecture and design patterns

  • What design patterns for microservices do you know and have tried it?
  • What kind of design patterns do you use in your daily work? How this knowledge helps you to write better code? Please describe some situations from your latest project when you use patterns?
  • Do you use software design principles in your practice? Could you tell which design principles do you use and why you need them?
  • Can you please give us a short overview of single page applications and multi page applications and pros and cons for using which of them?
  • What are the main pros and cons SPA?
  • Please compare pros and cons for Single-page and Multi-page application approaches.
  • What is Single Page Application? Can SPA be written without any frameworks? What are disadvantages of SPA (SEO -> server rendering)
  • Can you provide examples of GoF/GRASP patterns used on your project? Do you know what SOLID principles means?
  • Why are design patterns are good?
  • What is good architecture? What are the goals that architecture tries to solve?
  • What MV*-like architectural patterns do you know? Have used any? What are the differences?
  • What is Flux? What's the difference from MV*-like approach?
  • Redux vs Flux - differences?
  • What is IoC?
  • Which software architecrure trends you faced with? Docker and microservices?
  • What criterias you will use to select technologies for your project?
  • How you will you design/implement 2-way binding without 3rd party libraries and frameworks? Which patterns you will use?
  • How you will improve functionality of 3rd party library on your project?
  • Single page applications - how do you think why are they so popular now? What are good/bad things about server-side & client-side rendering?
  • What do you think about isomorphic applications? What are their benefits? What problems can they cause?
  • What design patterns you are using mostly in your code?
  • What is the use of design patterns? What problems do they solve? How can they help in communication?
  • Could you mention a few design patterns you usually use in your front end code?
  • What the differences between MV* patterns? Could you give examples of MV* patterns in frameworks?
  • Could you tell more about patterns you had to use?
  • Explain pros and cons of development using the components approach?
  • In your opinion, what is better composition or inheritance? Why?
  • What microservices patterns do you know?
  • Which design patterns, principles have you used on your last/current project? Why/what problem it solved?
  • D in SOLID. how is different from IoC, DI
  • What SOLID is? Could you tell how do you use solid in your work?
  • Difference between authorization and authentication? OAuth
  • Describe diference between PubSub and Observer patterns.
  • What is memoisation, how we can implement it in JS and when would you consider using it?
  • What the "Single Responsibility" principle stands for?
  • containerization vs virtualization. What containesrs did you use? Orchestrators?
  • Please pick any design pattern and describe it.
  • Could you describe us what is the difference between MVC, MVP and MVVM patterns?
  • How would you describe the definition of good architecture? What principles did you follow to build a good architecture? What is the cost of bad architecture?
  • Why we should use design patterns? Describe decorator and facade patterns.
  • Let's talk about hype topic - MicroFrontend. What is your opinion? Is it just fashion or necessity?

Design Thinking and Documentation Skills

  • How did you decide between choosing webpack and gulp/grunt setup?
  • As I see in form you worked just with React (Backbone, Angular). But let's say you are asked to start a new project and choose a tech stack for frontend. What would you choose?
  • Explain NFRs for the project and how do you achieve them.
  • What is the difference between functional and nonfunctional requirements? Examples?
  • What is functional and non-functional requirements? Could you provide some examples?
  • What kind of documents you've created recently (UML diagrams, etc.)?
  • Do you know the difference between functional and non-functional requirements? If yes could you please describe NFRs on your current project?
  • Imagine a situation that you have to choose SDLC methodology for a new project? Which one will you choose and why?
  • Your customer ask you to create functional specification for project, how you could organize this process?
  • You need to choose tech stack for environent where main requirement is performance. What tech stack you will choose and why?

Build/CI/CD

  • Could you please describe a current CI/CD process in your project if any? If yes, could it be improved somehow? If no, how would you organize it?
  • Could you please compare Gulp and Webpack?
  • Do you use Webpack on your project? Which version?
  • Why are you using CI on your project?
  • How do you understand CI/CD processes?
  • Could you please describe a current CI/CD process in your project if any? If yes, could it be improved somehow? If no, how would you organize it?
  • Can you name the stage of pipeline of continous delivery from development commit to production?
  • Please, explain what CI/CD is. What can D mean in that abbreviation? What is the difference between Continuous Deployment and Continuous Delivery? Did you participate in setupping CI/CD on any of your projects? What Quality gates can be part of CI?
  • Describe your actions when you discovers a critical bug in production? (situation: friday evening, everybody ooo)
  • Let's imagine you need to implement CI on a new project. What will be your actions?
  • How do you handle broken CI pipeline?
  • Do you know any webpack's competitors?
  • Can you compare different approaches in building process: npm (cli way) vs pluggable task runner (for example: gulp, grunt) and webpack?
  • How is organized build process on your project? What can be improved?
  • Imagine you start a new project. How would you decide which build tool use? Webpack, Grunt or Gulp?

Frameworks

  • What is the main difference from your point of view between JS framework XXX and YYY.
  • What are benefits and shortcomings of AngularJS, what do you like in 2.0 (if know)
  • Angular 1 vs 2. Comparison. What are the main improvements?
  • Describe the weak points of AngularJS and how can we deal with them.
  • What is(are) killer feature(-es) of Angular JS, what would you personally highlight in this technology?
  • Declarative vs Imperative programming in its application to Angular and/or HTML/CSS/JS apps. Shortcomings and benefits of each approach.
  • How would you convince me to change my webapp to use Angular.js if I were a customer and I didn't know anything about technical details?
  • Your favorite FE framework.
  • Imagine you need to choose library or framework for your new project. Which criterias will you use to make decision? - What are you actions when you need to decide between two libraries that you'll use in your project?
  • Imagine you write your own custom framework for project needs. Could you please compare your framework with anyone, you're familiar with (AngularJS, Backbone, etc). Do you adree that developing custom framework might be efficient than using existing one and why?
  • What better in your opinion - one-way or two-way data binding, why? What is better to use (prefer) in Angular?
  • What performance optimization techniques do you know in AngularJS?
  • Describe lifecycle of directive in AngularJS?
  • What are general recipes for optimizing Angular application?
  • What is the problem with angular watchers? Can you please describe it?
  • Speaking about components model in Angular - did it use any optimizations for not to iterate all watchers?
  • How do you structure angular modules within your application? How do you identify that is a separate module. If you have one big module for all application - what are pros and cons of such approach.
  • How do you usually integrate not Angular based 3rd party modules in your application?
  • Apply and digest calls - why do you use it?
  • What was the most complex architectural decision you made on your project?
  • Concerning interceptors in Angular have you worked with them?
  • Explain what is two-way and one-way data binding, from the high level of view, without details (specific to framework). Please provide some examples of libraries.
  • What is you opinion about frameworks without runtime (svelte, malina.js)?

React

  • What is Pure Component in react?
  • Redux principles: What is pure function? Where it came from (what paradigm)?
  • How "reselect library" improves performance? How do you measure perf? When reselect optimizations not working?
  • What is main difference between Redux and Facebook Flux library?
  • Speaking about the React. What's the difference between state and props?
  • How do you implement the situation when child component wants to update the parent state? What are the good practices?
  • What happens when you call setState in React?
  • When you are working with the SPA application what are the signs that you need use state container (like Redux in React)?
  • What does immutable mean to you?
  • Speaking about the DOM, what kind of DOM does React use?
  • What are the difference between virtual DOM and shadow DOM?
  • What React patterns are being used mostly in your code?
  • Could you please describe three Redux fundamental principles?
  • Stateful and stateless components. What is better? Pros and cons?
  • What's the main selling point of React to you. Why did you chose to go with React?
  • What is JSX and how come we can write it in our JavaScript code — how do the browser recognize it?
  • What are the main 2 types of components you can declare in React, and when would you use one over another.
  • Since we mentioned life cycle — can you walk me through the cycle of mounting a stateful component? What functions are called in what order? Where would you place a request for data from the API? Why?
  • Can you explain the idea of lifting the state up?
  • How to improve performance of react components?
  • What is Pure Component in react?
  • Redux principles: What is pure function? Where it came from (What paradigm)?
  • Component communication what strategies do you know (whithout state mananger)?
  • Could you tell us about strong sides of using Redux? Does it have any disadvantages? Do I need to keep all my state into Redux or Should I ever use react internal state?
  • As React is praised for its fast rendering, do you think it's better to use it over native JS in each web-app? Could you name cases, when it's not preferable to VanillaJS?
  • How "reselect library" improves performance? How do you measure perf? When reselect optimizations not working?
  • Which drawbacks ImmutableJS has?
  • How can we organize dependency injection in react?
  • Explain how using immutable data makes profit in performance
  • You worked with React, can you say which patterns are recommended to use during the application development (Best practices)
  • Explain how UseEffect hook works in React and cases where we can use it.

Angular.JS

  • What is disadvantages of using filters in templates in angular.js?
  • What is the theoretically recommended maximum of the watchers in your angular page?
  • What is the git submodules and why you should or not should to use them?
  • How you can improve infinite scroll performance in angular?
  • Describe how digest cycle works?
  • Could you explain difference between $scope.$eval and $scope.$evalAsync?
  • Explain what is linking function and type of linking function?
  • For nested directives, what will be the order of execution of directive functions? (compile, controller, pre-link, post-link)
  • What performance optimization techniques do you know in AngularJS?
  • Please describe lifecycle of directive in AngularJS?

Angular X

  • How does Angular2 AoT compilation works?
  • What is AoT? And what advantages it provides, what is the difference with JIT?
  • What is the difference between a component and a directive?
  • How is change detection implemented in Angular. What role does zone.js library play in Angular change detection
  • What is shadow DOM? How is it helping Angular 2 to perform better?

Interview

  • How do you rate candidates? What skills do you rate as the most important for the company?
  • How do you prepare for the interview? Do you use tricky questions or practice tasks?
  • Describe how would you interview people for the certain project. What kind of questions or topics are most important to get the right candidate?
  • What are the most important things for you in the feedback for the intreviewee?
  • Have you participated in technical interviews? If yes, what was the most challenging question from you?
  • In a scale of 100% how much time (in percent) you are spending for a coding part and how much for a leadership?
  • How do you keep the development base high in your team?
  • Do you remember an internal conflict that you have to resolve somehow?
  • About time management on your project - how do you ensure that estimations are met? How do you manage work in your Agile environment to make sure that there are enough time that estimations are met?
  • Question about speaking with the customer. You know customer may be a big problem when you are choosing framework or technology stack. What are the main points that you can use to prove customer that your technology stack is the best choice? What if customer wants to add obsolete plugin to your brand new Angular 4 application - what will be your arguments?

Mentoring

  • What was the most difficult/interesting/exciting about mentoring new people?
  • We've seen in your PRF that some of your mentees failed to complete the course. Could you describe why and propose how to avoid such situations in future
  • Besides the university trainee program have you had the chance to lead a team or some people yet? How did you start ramping up?
  • What are those skills which make you a good mentor?
  • Could you please describe the University Trainee Program? What was your role?
  • What results of mentoring (for yourself) can you mention?
  • What techniques did you use while mentoring?
  • How did you measure mentee's success? (You was a mentor, how did you understand that your mentoring was successful)?
  • Could you please describe differences between mentoring and coaching? How to make sure that coaching is effective? Criteria?
  • How do you improve your team lead and team work skills? How do you measure your success?
  • Only one (student) finished the course successfully. Have you analyzed why such situation happened? Maybe you found the ways how you may improve your courses?
  • Why do mentor people? What is the most exciting for you in mentoring? Which results have you achieved (for yourself)?
  • From your grow form I've got that you participate in different aspects of mentoring, right? How do you motivate your mentees to learn? Let's imagine then you have a mentee who doesn't meet the deadline with the last milestone (homework or something). What would you do?

Team managment / Communication

  • Team management: how to ensure, team is on track, how to delegate tasks
  • Imagine the conflict situation in your team: 2 specialists discussed 2 different approaches and this technical issue became personal conflict. Your actions?
  • You wrote that one of your goal is to take a role of JS/FE Technical Lead. Can you explain what responsibilities you do on this Project as a TL?
  • How would you handle a conflict between two skilled developer in your team regarding preferred coding style?
  • What would you do if one of your team mates unexpectedly become ill for two weeks? How would you reduce the negative effect in such situation?
  • How do you share your knowledge across the team and abroad? Is it some tech-talk sessions, or workshops, or trainings, or you just come to each person in case of any difficulties and come up with the solution together?
  • How do you check that your team development work is on the right track?
  • As a lead developer is it your responsibility to check whether your team members follow the processes?
  • How do you handle conflicts?
  • How do you think what was the quality, which helped you to achieve leading role? How did you managed to accomplish this, convinced others that you are the person to play a lead role.
  • What would you do if customer comes to you with a big and challenging task and says I want it to be done in a week, but even your raw and optimistic estimate tells you that it will require at least 2 weeks?
  • Your customer wants a new feature to be done, which requires usage of some absolutely new technology which you have no idea about. Your actions in this case?
  • What does your ramp-up process looks like? How would you optimize it?
  • How do you manage motivation issues in case of your team and in case of yourself, if any?
  • Explain delegation process, how you delegate tasks to team members?
  • Have you ever chance to increase the performance of your team? What would you do if you need to speed up development process in your team?
  • What was the most difficult in communication with customer? How did you deal with communication issues?
  • Please describe the most popular problems you faced working with customers and how you sorted them out?
  • How does your team agree ideas? How conflicts are mitigated.
  • What does transparency mean to you in terms of project managing?
  • Have you ever had the chance to influence a decision?
  • Imagine situtation: your customer would like to use some outdated technology which not you and not your team would like to use. What will you do?
  • Provided a "third-party free" solutions - how you choose them and promote to customer. (tricky question about licences).
  • How do you handle the situations when some member of your team comes to you with difficulties he faced, but you are overwhelmed with work?
  • Describe your actions when customer wants a new feature, and hesitating which way to go - adapt already existing CMS system, or write everything from a scratch.
  • Customer requests to migrate Desktop version of the product to mobile devices. Could you please describe your specific questions?
  • Some developer from project you technically lead/coordinate came to you with proposal to apply ES6 (ECMA2015). Your actions? Will you reject that proposal? Apply? Why it worth or not worth to apply?
  • How do you explain 'dependency injection' pattern to someone who has no experience working with it?
  • Recall last conflict/hard situation with client. How it was solved? What could be done better?
  • What is better delegate task or responsibilty?
  • Client said This new feature should be done today?, but you understand you'll need a week to finish it. What will you do?
  • Imagine one of your colleagues has written some code that you don't agree with. What will you do?
  • If a member of your team makes mistakes, delivers buggy code, make delays, what actions would you take?
  • Customer is very angry with your team, because the team deployed some defect to production. How should your team leader behave?
  • Your teammates constantly postpone code review to the end of the sprint. As a result the changes are merged in the last day of the sprint, QAs could not verify them on time. What to do?
  • Situation: Imagine that you are a lead of the small team. One of your subordinate is late for the morning meeting. He does this systematically. What will you do?
  • What is the difference between assignment and delegation? What is the difference on task assignment to L1 and to L2 developer?
  • How you will motivate people in your team to take mentoring role in eduction project?
  • How do you deal with conflicts during the code review process?
  • Do you perform any technique to manage your time?
  • Could you please tell us what your daily routine in the office is like?
  • Do you have any experience of task delegation? How would you choose the right person? How would you control that?
  • From your grow form I've got that you participate in different aspects of mentoring, right? How do you motivate your mentees to learn? Let's imagine then you have a mentee who doesn't meet the deadline with the last milestone (homework or something). What would you do?
  • Situation: by some reasons you understand that your team can't deliver some major features in time. How would you handle it? Customer planned a great demo, and he can't shift the deadline.
  • How do you deal with conflicts during the code review process?
  • Describe which criteria a new team member should fit to get into your team as a FE dev level 3.
  • Imagine there is really toxic person in your team. At the same time they are really good developer. How would you deal with that situation?
  • What is onboarding? How do you onboard developers on your project?
  • Delegation and assigment. Explain delegation process made by you.
  • Customer tells you to merge now feature with bug.
  • Imagine that you are done with a task, and your team lead and the assistant are missing. What are going to do?
  • Customer is very angry with your team, because the team deployed some defect to production. How should your team leader behave?
  • Are you familiar with delegation? Did you delegate? What's the difference with assignment?
  • Let's imagine you have a conflict in your team between you subordinates. What will you do?
  • Do you have any experience of task delegation? How would you choose the right person? How would you control that?
  • You are leading development team. One of your team members offended a customer ocasionally. How will you deal with this situation?
  • Consider situation, when one of your subordinates made a mistake, which broke up the build. Please, describe your reaction and actions you will undertake.

Agile / Scrum / Kanban

  • What is scrum methodology?
  • What are story points?
  • How do you think what are the roles of Scrum Master?
  • How do you estimate your tasks?
  • What criterias you will use to prioritize tasks between you and your mentee/subordinates?
  • What differences between Scrum and Kanban metodologies. Why Scrum/Kanban/Waterfall is more applicable for you project?
  • What you will do in case you see that your original estimation was wrong and you need overtime to finish till deadline.
  • What is the use of Planning & Retrospective meetings?
  • In your opinion, why is agile methodology so popular today?
  • Could you please explain your current development process? Have you ever thought about switching to another development process (Kanban)? Are there advantages or disadvantages in switching to Kanban?
  • Could you please compare kanban and scrum?
  • How would you handle the situation when you realize that estimation was wrong and you cannot complete some feature in time?
  • Your customer wants a new feature to be done, which requires usage of some absolutely new technology which you have no idea about. Your actions in this case?
  • In general, how do you provide user story estimations? Is it story points or just actual time(days/hours)? In your opinion, which approach is better?
  • If you underestimated some task and don't have more time to implement it. What will be your actions?
  • Please explain process from getting Visual Design until the approved prototype.
  • What would you do in case you realize that you won't be able to deliver planned functionality in time and your estimations were wrong?
  • How do you prioritize your tasks? For example you need to decide which task is more important for you right now. What will you do?
  • What is better under-estimation or over-estimation?
  • Let's imagine you need to create a 'Send Email' form from Gmail. What will be your estimates and why?
  • What estimation techniques do you know?
  • What will you do if the customer wants to change some story in the middle or at the end of the sprint?
  • In your opinion, which artefact is unnesessary in SCRUM?
  • What software development techniques are you using on your project and what other techniques do you know?
  • In which case do you use Agile methodologies and in which case Waterfall methodology?
  • Lets imagine that you are a scrum master. What will you do, if customer wants to implement a brand new feature right now, and your team is in the middle of current sprint?
  • Could you please explain difference between Scrum and Kanban?
  • How do you estimate your tasks? What estimation techniques do you know?
  • Estimation techniques, metrics, why we estimate
  • How do you do your technical tasks estimations?
  • What is better under-estimation or over-estimation? Why?
  • What's the difference between Scrum and Kanban?
  • When Scrum/Kanban can't be used?
  • Describe your steps if you realize that you wrongly estimated some stories and sprint fails?
  • What methodology will you choose for building a spaceship and why?
  • What are pros and cons of Scrum? What's the difference between Scrum and Kanban? When can't we use SCRUM?
  • Your team should estimate some sprint (sprint includes front/back/design tasks). How will you organize this process, how will you estimate tasks, how will show the result to the customer?
  • Difference between Scrum and SAFe.
  • What is an optimal team size in a SCRUM team? What problems may appear if the team would be bigger or smaller? How to solve those problems? Imagine that your team has a significant rump up - how would you change the processes?
  • What is the difference between Agile and Scrum? What is the difference between PM and SM? Can they be the same person?
  • Imagine situation you're in the middle of Scrum sprint and customers comes with super-highly-valuable feature to implement immediately. Your steps?
  • Let's imagine the customer asks you to push an additional story in the middle of a sprint. What would you do?
  • How do you understand "Definition of Done"?
  • What is Definition of done and how it helps?
  • What is "Definition of Ready"?
  • What "feature complete" means for you?
  • What do you think why Agile Software Development Methodology is popular now? What techniques for managing a software development process are used in your project?
  • Supposing the situation in the middle of the sprint, when you've found out that the amount of tasks assigned to you is too huge. How would you manage with it? How do you usually plan your work during the day?

Software Process Knowledge

  • Please, name the basic steps of software development process
  • Git conflicts resolving, rollback of changes.
  • Git Flow. What kind of Git branching strategies are you familiar with? What are benefits and drawbacks of those?
  • Could you explain GitHub flow?
  • What does the GIT flow, how it differs from Gitlab flow?
  • What is your opinion about rebase versus merge?
  • Please compare GraphQL and REST (pros and cons)? RPC vs REST vs GraphQL. How will we implement versioning in GraphQL?
  • GraphQL. Did you wrote any e2e tests?
  • What is the difference between SPA and MPA, what are the pros and cons of both? How to choose what fits your project?
  • Imagine you have a greenfield project, how are you are going to choose the framework for it?
  • Do you know some exterme programming technics? Some experience?
  • Describe how do you manage and eliminate a technical debt on your project?
  • How do you convince client to eliminate tech debt?

Unsorted

  • Have you ever had the chance to improve a process in any area of your work?
  • What is extreme programming? What techniques did you use?
  • You are starting new project from scratch, what frameworks, arch patterns would you choose and why?
  • What is semantic versioning?
  • Tell us about loaded and difficult day for the last 2 weeks. Something went wrong? How do you deal with it?
  • Have you demotivated employees? Tell us what you have taken to correct the situation.
  • You have a release, and the PM asks you to include a feature that is 95% ready, with no tests, but the client wants to see it on PROD. What do you say to your PM?
  • Imagine you are leaving a project where you was responsible for some big complex undocumented area. Your teammates are not competent in this area and you should make knowledge transfer for them. Your steps?
  • You mentioned in your form that you mentored junior and newcomer. Was it successful and why? How do you think you may improve your mentoring skills?
  • What techniques did you use? What was the outcome?
  • Could you describe pitfalls you may face with in development for mobile devices? (What are the difficulties you may face )
  • What better in your opinion - one-way or two-way data binding, why?
  • How would you improve website load time / performance?
  • What design patterns you are using mostly in your code? What problems design patterns help to solve?
  • You wrote you performed code reviews, What do you usually do (or will do) if somebody doesn't agree with your review comments?
  • Explain delegation process, how you delegate tasks to team members?
  • Imagine you need to choose framework for your new project. Which criterias will you use to make decision?
  • How do you mentor? Please describe a mentoring session held by you.
  • Could you expain all ways how to inherit one object from another?
  • When we need to care about memory leaks and start search for performance issues? Describe how will you deal with that performance issues?
  • Describe the weak spots of angularjs and how can we deal with them?
  • How do you debug performance issues?
  • How do you improve your team lead and team work skills? How do you measure your success?
  • How we can increase the speed of TypeScript compilation process?
  • Choose any design pattern and describe it.
  • What feature complete" means for you?
  • What is the main difference between gulp and grunt? What is better?
  • What is the difference between responsive and adaptive web design? What would you choose and why?
  • How do you understand that the code is good/bad?
  • What techniques did you use while mentoring?
  • Recall last conflict/hard situation with client. How it was solved? What could be done better?
  • What is better White or Black testing?
  • How do you decide what to delegate and why? => What is better delegate task or responsibilty?
  • You'r starting new project from scratch, what frameworks, arch patterns would you choose and why?
  • Client said This new feature should be done today?, but you understand you'll need a week to finish it. What will you do?
  • Your website is making a lot of HTTP with over 40 icons and a couple very large gif images. How could you reduce the number of requests?
  • What is your favorite features in latest ES specifications?
  • Do you you know something about HTTP protocol version 2, what advantages does it provide in comparison of HTTP v1?
  • How do you deal with conflicts during the code review process?
  • How would you define velocity of your team, and what it is used for?
  • What is code review, what kind of tools do we have for that? Different types of code review? In the context of CI which is better and why?
  • What is mobile first design? How would you create a new material design in Angular?
  • Imagine one of your colleagues has written some code that you don't agree with. What will you do?
  • Is there multi-threading in JavaScript?
  • How to understand that it's time to refactor something? How can you convince client that refactoring is needed?
  • What is immutability? Why do you need it? How can you ensure immutability in JavaScript?
  • You have a release, and the PM asks you to include a feature that is 95% ready, with no tests, but the client wants to see it on PROD. What do you say to your PM?
  • Post and pre commit code review: what are the pros and cons? In the context of CI, which one would you use and why?
  • Dependency injection. What is it needed for?
  • What is the functional programming? And the difference between OOP. Pros and cons. Have you used lodash or other functional libs?
  • How to convince some members of your team in that their approach is wrong?
  • What is disadvantages of using filters in templates in AngularJs?
  • What are the differences between code quality and product quality?
  • You've a burden of obsolete technology on the project, utilized by the customer. It will slow down future progress of the project. What should you do?
  • From the architectural point of view Pros and Cons of SPA?
  • Memory leaks in SPA, what's the main cause? How to detect?
  • When leading project, how did you delegated tasks and controled subordinates?
  • Situ: customer says "the application is slow"? What are your steps?
  • From the grow form - flux. What can you say about?
  • What's the difference between flux and redux?
  • Situ: you start a new prj. Which framework to select?
  • How did you do the code review? Which tools did you use?
  • What do you know about technical debts?
  • What's the process of technical debt management?
  • Which design patterns you think the most useful for you?
  • What kind of conflicts did you have? How you managed them? What would you change if you could?
  • Do you have an idea of kind of conflicts may happen between people?
  • What types of conflicts may, must and must not be escalated? Briefly.
  • Have you ever had failure tasks and/or projects?
  • Vanilla script (pure js) - the good and bad things?
  • What role does testing play in dev cycle?
  • What Webpack is able to do?
  • Any static analysis tools?
  • Where did you get the soft-skill knowledge from?
  • Which SW development methodologies do you know?
  • When would you use a component over a directive?
  • Why is isolate scope an important concept?
  • How does the $digest cycle work?
  • Give an example of an immutable operation in JavaScript
  • Why ng-controller - is bad?
  • What is an http interceptor and what are good use cases for it?
  • What is $q and when would you use it?
  • What is the difference between a stateful and stateless component?
  • When is convenient to make refactoring?
  • What is the difference between Stub & Mock?
  • How do you handle subjective (opinions vs facts) disputes?
  • What are the main attributes of a leader?
  • What is it to be a mentor/presentor? How do you organize the process, strategy? Resources?
  • How did you handle (mis)communication with your last customer?
  • What are the main goals of conferences and tech/social meetups for you?
  • How do you handle bad mood?
  • How does supervision affect your productivity (delivery)?
  • What software best practices did you use on your last project and why?
  • Why would you refactor Angular app into React? What reasons?
  • How did you improve performance on the last project and what kind?
  • What's the difference between FE vs BE development?
  • What do you like about Node the most, if you were to compare it to other BE frameworks/languages?
  • What tools do you use during refactoring and debugging?
  • What was, in your opinion, the best architecture of one of your projects and why?
  • How is responsive design different to static?
  • How did you split tasks with others (pair programming, delegation, coordination etc)?
  • What will you do, if the requirements are unclear?
  • What kind of ideas did you suggest to improve your last project? How did it help?
  • How do you estimate a project? Especially alone. What factors, metrics do you use?
  • If a member of your team makes mistakes, delivers buggy code, make delays, what actions would you take?
  • What were pitfalls of migrations from Angular 1 to Angular 2?
  • What books or online resources would you receommend to D2 developer who wants to become a D3 ?
  • Imagine your project is being suddenly prioritized, so THREE new developers are being added to it, and it is your task to quickly onboard them and make sure they are productive. What will be your steps in such situation ?
  • Imagine a new feature request is made for a web app your team is supporting. You are the most trusted developer in the team and you are responsible for everything in the app to run smoothly but this feature will be implemented by another developer (maybe more junior). How will you ensure quality and consistency of the produced code, APIs, etc?
  • What was the most recent technical thing you got excited on?
  • What are the benefits and drawback of SPA?
  • How do you handle asynchronous actions in Redux? Could you compare it to RxJS ?
  • Is Javascript Single or Multi threaded language ? How to make it multi threaded ?
  • What are the benefits of FlexBox model?
  • Describe the Flex/Flash stack
  • Why https is important?
  • Progressive Web Apps / Service workers?
  • When is a function called "pure function"?
  • What does REST stand for? When is an API reffered to as a REST API? What methods can you recall from the HTTP protocol?
  • Can you describe at least two design patterns in detail - like what kind of problem do they solve and how?
  • What kind of performance issue are common in FE apps and how do you approach improving performance and UX on the client?
  • What version control workflow would you recommend to a team of 5-7 developer ?
  • You developed some feature. It has been tested and release to Prod. After release you realized that another feature stopped working completely. Your actions?
  • How do you perform code review. What do you pay attention to during code review
  • What is story point?
  • Imagine a situation - you designed an architectural approach for a new feature, but other developer also has alternative approach - the two are incompatible. What would be your steps in such situation ?
  • You need to implement code review process in your new project. What should you recommend and why?
  • Describe onboarding plan of new developers
  • Your role makes you responsible for choosing between two alternative technologies. Given that there's also a team of developers who would later work with the techonology, what variables will you take into account when making the choice?
  • When you realize that it's time to refactor some code?
  • You (as D3 developer) and two D2 developers have been asssigned to a mature project (but new to you), which was not actively maintained but suddenly needs new features. Client wants to make sure no regressions affect current production application. How would you approach this ? What would you suggest ?
  • What are the benefits of e2e tests?
  • How would you approach refactoring of legacy code?
  • What is Test Driven Development and have you applied it and how?
  • How will you deal with the situation when different developers in the team have different preferences for coding styles like indentation, naming, etc. What practices and tools come to mind?
  • Let's imagine the situation: You are working on some buisness critical bug. You almost finished the story but QA found a critical bug that is not fixed yet in browser. For exmaple it's related to specific behavior on iPhone, last versions of iOs etc. This bug is up and running in Safari bugtracket for last 4 years. What would you do?
  • You've noticed contradictory requirements in spec, what will be your actions to fix this issue
  • You start working on a new project and the client is very communicative and supportive, you even spend some time on site at the client office and get introduced to the project but big part of the requirements are only shared verbally or in in an ad-hoc on-demand manner. What risks does that hide and how can you address the situation in advance? Also if the issues are already a fact and now the client is putting the blame on the development team, how will you defend your point of view?
  • Have you ever used flow in your project? Could you please tell us about Flow. What are benefits of its usage?
  • Unit test vs e2e? Coverage at you project? How private methods can be tested?
  • Let's imagine situation when you, as a key developer, have a requirement from customer to make some very specific implementation of some feature. After analizing this story, you find out that implementing it in proposed way will severely hurt maintainability and will heavily slowdown development process of next features. What will you do?
  • How will you estimate task you have never performed?
  • Supposing, you are working on a web-page development project. One day you receive a message from QA engineer, that the site stutters and doesn't load fast enough. Could you, please, describe your steps for issue investigation?
  • As you know, JS engines mechanism bases on Event loop. Please, describe how this fact impacts the way of JS code implementation.
  • Could you name some best practices that are ground on it?
  • What are benefits of writing tests beforehand actual code implementation?
  • Could you please name, what recent changes took place in React, and their reasons?
  • Let's consider the following case: you are lack for devs in your team, and you are provided with a candidate, which has good tech skills, but you noticed that he is not quite pleasant to deal with. What would you do?
  • Imagine that you are leading the small team. One of your subordinate is late for the morning meeting. He does this systematically. What will you do?
  • How to work Virtual DOM in React (what is VDOM, what is the puprose to use it)? What is the difference between DOM and VDOM?
  • Imagine that you are leading the small team. One of your subordinate is late for the morning meeting. He does this systematically. What will you do?
  • One of your colleagues created а commit for new feature (it includes back and front files, refactored and new components). Let's say around 1000 lines. How will you review this commit? What kind of pieces of code will have special attention? [Split big commit into small chunks with back and front. Add new component without integration separately. Cover by unit tests (e2e depends on requirement, but good to mention about them). If it has doc for the components or UIkit, update it (mention about doc).]
  • How to work Virtual DOM in React (what is VDOM, what is the puprose to use it)? What is the difference between DOM and VDOM?
  • You have a task to develop an UIKit, the design is done and approved. What kind of libraries/tools/technologies will you use? Describe how will you organise the structure?
  • Can you please name your favorite design patterns? (if it will be the observable or singleton ask about others) How to these knowledge could help you in you daily work?
  • Supposing, you are working on a web-page development project. One day you receive a message from QA engineer, that the site stutters and doesn't load fast enough. Could you, please, describe your steps for issue investigation?
  • As you know, JS engines mechanism bases on Event loop. Please, describe how this fact impacts the way of JS code implementation. Could you name some best practices that are ground on it?
  • Name the features of good quality unit tests. What are benefits of writing tests beforehand actual code implementation?
  • Could you please name, what recent changes took place in React, and their reasons?
  • Let's consider the following case: you are lack for devs in your team, and you are provided with a candidate, which has good tech skills, but you noticed that he is not quite pleasant to deal with. What would you do?
  • How do you provide codereview. List of things to look for during CR. Name some of code smells
  • Let's imagine situation when you, as a key developer, have a requirement from customer to make some very specific implementation of some feature. After analizing this story, you find out that implementing it in proposed way will severely hurt maintainability and will heavily slowdown development process of next features. What will you do?
  • From your point of view, what is the most major accomplishment or achievement,that gives you most confidence in becoming a D3?
  • How do you keep yourself in good technical state? (read smth, where?) What was the latest?
  • Difference between technical debt vs code smell? Any tools to measuretechnical debt? (you decrease, how to measure?)
  • You have chosen Redux as the state container on your project. Could you tell us about strong sides of using Redux? Does it have any disadvantages? Do I need to keep all my state into Redux or Should I ever use react internal state?
  • Software development changes at an insanely rapid rate, especially if you compare it to some other fields. What do you do if you are facing with sutation when you need to learn new technology? How do you develop a growth mindset?
  • In your form you mentioned that you use Agile on your current project. Can you say the pros and cons of Agile methodology?
  • Let's imagine the situation, You had to juggle several tasks at the same time. How did you organize your time?
  • What does clean code mean for you? How do you ensure code quality?
  • What does an accessible application mean for you? Do you consider a11y problems in your current project?
  • As an Engineer what is that one area where you think you need to improve?
  • Could you please explain why do we need code review in software development? How do you manage them?
  • What artifacts in Agile do you know? Please, could you describe them?
  • Could you please tell us about technical debt?
  • Describe the feature you've implemented and you're proud of. What principles, design patterns have you used for designing its architecute?
  • Please, describe what critetia should match a good unit test? Can you name some anti-patterns in unit tests usage?
  • Supposing you are assigned as an architect of brand-new project. You are provided with a team. Which frameworks, technology stack will you choose? What are mandantory steps for establishing project processes? What are benefits of using frameworks? What are disadvantages?
  • If you occurred being overloaded with tasks in the middle in the sprint and you realized,that probably you wouldn't manage to complete all in time. How would you handle the situation?
  • What steps will you undertake to handle the slow page loading? How will you start a problem investigation? What if TTI (time to interactive) metric is quite big, what are possible ways to improve it? (WebWorkers, code splitting)
  • Could you name difference of performance optimization technics for HTTP/1.1 and HTTP2? What is a difference in interviewing D1, D2 and D3? Could you, please, give an example of question, that will reveal whether a developer matches Senior level? Are an excellent bagage of technical skills and applicable for a target project experience enough to pass an interview into your team?
  • Can you name the stages of continous delivery pipeline from development commit to production?
  • Could you please describe ideal metoring process from your point of view? How to evaluate successfull mentoring?
  • Are you familiar with FLUX architecture? Coudl you please compare to MV* architecture?
  • What kind of different estimatin approach do you know? Which of them did you use in real practice? Decribe the relative estinmation approaches. Advantages and disadvantages.
  • Have exp with react, redux. How to deal with asynchronous logic? Requests in reducers? Why do we need middleware? Workaround to get rid of it?
  • What does an accessible application mean for you? Do you consider a11y problems in your current project?
  • As I can see you can deal with a lot of activities at the same time. Could you please tell us how you organize your time, maybe use some techniques? How do you define priorities?
  • How to estimate task, epic, project. Which techniques you are following
  • Please describe how Javascript manage the asynchronous events under the hood (Callbacks / SetTimeout / Ajax calls)
  • Which clean code principles do you know and follow
  • You get a legacy code and nobody knows how it works, what does it do. There is no documentation. How would you discover this code base?
  • Let's suppose we do not know what the benefits of Continuous Integration are? Please persuade us to use it!
  • What is the critical rendering path and how it works?
  • What is the main Advantages & Disadvantages of JavaScript / compare to other languages
  • Which design patterns you think the most useful for you?
  • Imagine the situation client say that his REACT application is laggy, how to deal in this situation, and how to handle performance issues in React?
  • What recent changes were introduced in React? Why were they added?
  • What were you developing, that you need bluetooth API POC? Was it ok regarding support only in chrome?
  • What does an accessible application mean for you? Do you consider a11y problems in your current project?
  • What would you do if customer asks you to work in non-working hours, to deploy feature now?
  • Give an example of solving difficult issues. How you helped your teammates? What could be improved?
  • You are reviewing the code and see that your teammate wrote unit test. How you will define that unit tests are written properly?
  • Could you please explain Event loop concept to your granny? Explain her tasks vs microtasks.
  • Case study - solution selection (db, backend). Collect users activity (history) for video platform. On top of that data - build search platform.
  • You mention in your presentation, that you have mentoring experience. What was your responsibility in this role? What is the difference between mentoring and coaching?
  • What kind of CSS methodology have you used and what do you know, Could you please compare them and provide information about the pros and cons? What is your favorite one and why?
  • Tech stack choice. Pros and Cons of frameworks. What framework would you choose and why, what is the key reason for choosing one instead of another? What will you do in case if You know React and you team also work with React, but client want to use something different (Vue, Angular)
  • What types of managing the state in react you know? Could you compare them? When in your opinion is better to use Context and when Redux?
  • Have you worked (are you familiar) with hooks in React, Сan you list which ones you know, What is the purpose of using useMemo hook? How do you test custom hook? When to use useReducer and whan useSate hook?
  • What is the code quality for you? What should we do to improve the quality of the product? (tests - what is enough coverage and why, what kind of tests, and what is the most important, code review)? TDD vs BDD - what is the difference, what to use and why ?
  • Have you ever faced an issue with performance? Provide an example of a bad performance. How do you usually deal with bad Performance? How to find performance issues and measure? What to do in case, when you find the issue but have no time to fix it now?
  • Let's imagine the situation that you are the lead developer on the project, and you need to find a solution of how to implement some new feature and you have not enough time so you delegate it to two middle developers, and they provide two different approaches and you understand that both of them are good, How do you choose which one to use, and how do you explain to your colleagues why you chose one over the other?

Follow-up questions

  • Which one do you prefer and why?
  • What is the idea of this project?
  • What are the core principles of each of it?
  • Which is better?
  • How would you explain to your teammate the benefits of using one?
  • Which concepts/instruments/constructions in JavaScript help you writing code in a certain paradigm and which are confusing to you?
  • What their pros & cons?
  • Could they be mixed in one project?
  • Do you have a preferred file structure, say for a front-end application?
  • Does JavaScript allow circular dependencies? Does node.js do?
  • How to deal with circular dependencies (say module A depends on B and B depends on A)?
  • Have you maybe heard of any automation tools for structuring projects?
  • What does it mean X (easy to extend), could you elaborate?
  • How you can convince the teammates/customer to use it instead of X?
  • How it works?
  • What problem it solve?
  • What would you change if you could?
  • Is something wrong with X?

asmt-javascript-questions's People

Contributors

alexkad avatar deser avatar dzmitry-varabei avatar karlovich avatar kisix avatar kyatskevich avatar mikhailsemichev avatar unlight avatar vadzimbudzishyn avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.