Fullstack Engineer Flashcards

1
Q

What is Full Stack development

A

Full stack development involves developing both the front end and the back end of the web application/website at the same time.
This process includes three layers:
1) Presentation layer (front end part)
2)Business logic layer (backend part)
3)Database

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What do full stack developers do

A

A full stack developer is a person who is familiar with developing both client and server software. In addition to mastering CSS and HTML, they also know how to program browsers, databases, and servers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Name a few full stack developer tools

A

visual studio code, typescript, github, eslint

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What skills do you need to be a fullstack developer?

A

A full stack developer should be familiar with:
1)Basic languages - HTML, CSS and SQL
2) Front end frameworks and libraries - bootstrap, reactjs, typescript
3) Backend frameworks - Express, NodeJs, Django
4) Databases - Mysql, sqlite, postgres, mongodb
5)Additional skills - git, machine learning, ssh, linux command, data structures, character encoding

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Explain Pair programming

A

As the name suggests, pair programming is where programmers share a single workstation. Formally, one programmer at the keyboard called the driver writes the code. The other programmer is the navigator who views each line of the code written, spell check, and proofread it. Also, programmers will swap their roles every few minutes and vice-versa.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is CORS

A

Cross-origin resource sharing (CORS) is a process that utilizes addition HTTP headers to tell vrowsers to provide a web application running at one origin. CORS accesses various web resources on different domains. Web scriptrs can be integrated using CORS when it requests that has an external origin (protocol. Domain, or port) from its own

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is Inversion of Control (IoC)

A

Inversion of Control (IoC) is a broad term used by software developers for defining a pattern that is used for decoupling components and layers in the system. It is mostly used in the context of objct-oriented programming. Control of objects or portions of a program is transferred to a framework or container with the strategy design pattern, factory pattern, and dependency injection.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is dependecy injection

A

Depemdency injection is a design pattern by which IoC is executed. Injecting objects or connecting objects with other objects is done by container instead of by the object themselves. It involves three types of classes.
1)Client class: It depends on the service class.
2)Service class: It provides service to the client class
3)Injector class: It injects service class into the client class

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is continuous integration

A

Continuous Integration (CI) is a practice where developers integrate code into a shared repository regularly to detect problems early. CI process involves automatic tools that state new code’s correctness before integration. Automated beuiilds and tests verify every check-in.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is multithreading and how it is used?

A

The main purpose of multithreading is to provide multiple threads of execution concurrently for maximum utilization of the CPU. It allows multiple threads to exists within the context of a process such that they execute individually but share their process resources.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How is GraphQL different from REST

A

This is typically a difficult question to answer, but a good developer will be able to go through this with ease.
The core difference is GraphQL doesn’t deal with dedicated resources. The description of a particular resource is not coupled to the way you retrieve it. Everything reffered to as a graph is connected and can be queried to application needs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

List the ways to improve your website load time and performance

A

1) Minimize HTTP requests
2) Utilize CDNs (Content Delivery Networks) and remove unused files/scripts
3) Optimize files and compress images
4) Browser caching (Browser caching is a process that involves the temporary storage of resources in web browsers)
5) Apply CSS3 and HTML5
6) Minimize Javascript & style sheets
7) Optimize chaches

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the observer pattern

A

The purpose of the Observer patters is to define a one-to-many dependency between objects, as when an object changes the state, then all its dependents are notified and updated automatically. The object that watches on the state of another object is called the observer, and the object that is being watched is called the subject

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Whats the difference between a Full Stack engineer and a full stack developer

A

A full stack engineer is someone with a senior-level role with experience of a full stack developer, but with project management experinece in system administration(configuring and managing computer networks and systems)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is polling

A

Polling is a method by which a client asks the server for new data frequently Polling can be done in two ways: Long polling and short polling.
1) Long polling is a developmnet pattern that surpasses data from server to client with no delays.

2) Short polling calls at fixed delays and is AJAX based

HTTP Long Polling is a technique used to push information to a client as soon as possible on the server. As a result, the server does not have to wait for the client to send a request. In Long Polling, the server does not close the connection once it receives a request from the client.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is the difference between GET and POST

A

GET:
>GET is used to request data from specified resources
>can be bookmarked
>can be chached
>parameters remain in the browser history
>data is visible to everyone in the url
>only ASCII characters allowed

POST:
>POST is used to send data to a server to create/update a resource
>Cannot be bookmarked
>Not cached
>parameters are not saved in the browser history
>data is not displayed in the URL
>binary data is alo allowed

17
Q
A