Saturday, April 27, 2019

Top 10 Software Engineering Interview Questions and Answers

Top 10 Software Engineering Interview Questions and Answers 


1) What is the main difference between a computer program and computer software?
A computer program is a piece of programming code. It performs a well-defined task.  On the other hand, the software includes programming code, documentation and user guide.
2) What is software re-engineering?
It is a process of software development which is done to improve the maintainability of a software system.
3) Describe the software development process in brief:
The software development is a life cycle is composed of the following stages:
  • Requirement analysis
  • Specification
  • Software architecture
  • Implementation
  • Testing
  • Documentation
  • Training and support
  • Maintenance
4) What are the important categories of software?
  • System software
  • Application software
  • Embedded software
  • Web Applications
  • Artificial Intelligence software
  • Scientific software.


5) What are SDLC models available?
Waterfall Model, Spiral Model, Big-bag model, Iterative Model, and V- Model are some of the famous SDLC models.



6) What is verification and validation?
Verification:
Verification is a term that refers to the set of activities which ensure that software implements a specific function.
Validation:
It refers to the set of activities which ensure that software that has been built according to the need of clients.
7) In software development process what is the meaning of debugging?
Debugging is the process that results in the removal of error. It is very important part of the successful testing.
8) How can you make sure that your code is both safe and fast?
In the software, development security is always first. So if the execution of the program is slow then, I will try to identify the reason out ways to its time complexity.
9) Name two tools which are used for keeping track of software requirements?
There many l ways to keep track of requirements.
Two commonly used are:
  • Make a requirements specifications document to list all of the requirements.
  • Create an excel sheet the list down the requirement, type, dependency, priority, etc.
10) What is the main difference between a stubs, a mock?
A stub is a minimal implementation of an interface which generally returns hardcoded data while mock usually verifies outputs against expectations. Those expectations are set in the test.
11) What language do you like to write programming algorithms?
Every developer has their views when it comes to the programming language choices. Though, one should prefer high-level languages because they are dynamic. Like C and C++ languages.
12) What is computer software?
Computer software is a package which includes a software program, its documentation, and user guide on how to use the software.
13) According to you which SDLC model is the best?
There, is no such ranking, as SDLC Models are adopted as per the need for the development process. It may differ software-to-software.
14) Who is software project manager? What is his role?
A software project manager is a person responsible for managing the software development project.
The project manager is doing the project planning, monitoring the progress, communication. He or she also manages risks and resources to deliver the project within time, cost, and quality constraints.
15) What is mean by software scope?
Software scope is a well-defined boundary. It includes all kind of activities that are done to develop and deliver the software product.
The software scope defines all functionalities and artifacts to be delivered as a part of the software. The scope also identifies what the product will do? What is not the part of the project? What is project estimation?
This process is helpful to estimate various aspects of the software product. This estimation can be decided either consulting experts or by using pre-defined formulas.
16) How to find the size of a software product?
The size of software product can be calculated using by following two methods
  • Counting the lines of delivered code
  • Counting delivered function points
17) What are function points?
Function points are the features which are provided by the software product. It is considered as a most important measurement for software size.
18) What are software project estimation techniques available?
Most widely used estimation techniques are:
  • Decomposition technique
  • Empirical technique
19) What is Software configuration management?
Software configuration management is a process of tracking and controlling changes that happen in the software.
Change control is a function which ensures that all changes made into the software system are consistent and created using organizational rules and regulations.
20) How can you measure project execution?
We can measure project execution using Activity Monitoring, Status Reports, and Milestone Checklists.

  To be continue...

Top-software-engineering-interview.html 

Top-20-software-engineering-interview.html 

Thursday, January 17, 2019

20+ Frequently Asked AngularJS Interview Questions and Answers

20+ Frequently Asked AngularJS Interview Questions and Answers

 

AngularJS can be a demanding technology, prompting a salary scope of anything from $60/hour for a freelance developer to $70,000/year for a Front End Developer/Engineer in an organization. Since this certification is a requirement for a large percentage of web-developer job postings, you can assume that there is never a lack of qualified candidates.
In every interview, you will have to contend with fierce competition. To perform well and get your dream job, you have to prepare in advance. To help you, we’ve outlined 20 frequently asked AngularJS interview questions and the kind of answers your interviewer is likely looking for.
1. In 30 seconds, define AngularJS.
AngularJS is an open-source JavaScript framework designed for creating dynamic single web page applications with fewer lines of code.
2. Mention some advantages of using AngularJS framework.
Some of the key advantages of using AngularJS framework include:
  • It provides a great “desktop-like” experience to the end user.
  • By separating DOM manipulation from app logic, it makes code modular and easy to test.
  • It supports two-way data binding.
3. What is the main thing that you would need to change if you were migrating from AngularJS 1.4 to AngularJS 1.5? 
To adapt to the new AngularJS 1.5 components, you would need to change .directive to .component
4. Is AngularJS compatible with all browsers? 
Yes.
5. What are the key features of AngularJS?




AngularJS, the self-proclaimed “superheroic JavaScript MVW framework,” has been around since 2009 and it remains one of the most popular web development frameworks the world over. According to Indeed.com, the demand for developers has been on the rise in recent months and this trend is expected to continue.
AngularJS can be a demanding technology, prompting a salary scope of anything from $60/hour for a freelance developer to $70,000/year for a Front End Developer/Engineer in an organization. Since this certification is a requirement for a large percentage of web-developer job postings, you can assume that there is never a lack of qualified candidates.
In every interview, you will have to contend with fierce competition. To perform well and get your dream job, you have to prepare in advance. To help you, we’ve outlined 20 frequently asked AngularJS interview questions and the kind of answers your interviewer is likely looking for.
1. In 30 seconds, define AngularJS.
AngularJS is an open-source JavaScript framework designed for creating dynamic single web page applications with fewer lines of code.
2. Mention some advantages of using AngularJS framework.
Some of the key advantages of using AngularJS framework include:
  • It provides a great “desktop-like” experience to the end user.
  • By freeing the developer from having to register callbacks manually or write repetitive low-level DOM manipulation tasks, it saves months of development.
  • By separating DOM manipulation from app logic, it makes code modular and easy to test.
  • It supports two-way data binding.
3. What is the main thing that you would need to change if you were migrating from AngularJS 1.4 to AngularJS 1.5? 
To adapt to the new AngularJS 1.5 components, you would need to change .directive to .component
4. Is AngularJS compatible with all browsers? 
Yes.
5. What are the key features of AngularJS?
  • Scope
  • Controller
  • Model
  • View
  • Services
  • Data Binding
  • Directives
  • Filters
  • Testable
6. Define scope in AngularJS.
Scope is a special JavaScript object that plays the role of joining the controller (JavaScript) with the views (HTML). The controller sets properties on the scope and the view binds to them.
7. Explain the concept of scope hierarchy.
Each AngularJS application has only one root scope. Child controllers, however, create a scope for each view. When the new scopes are created, they are added to their parent root scope as child scopes. This creates a hierarchical structure when they are attached.
8. What is data binding in AngularJS and What is the difference between one-way and two-way binding?
Data binding is the automatic attunement of data between the view and model components. AngularJS uses two-way data binding. In one-way binding, the scope variable in the html is set to the first value that its model is assigned to.
In two-way binding, the scope variable changes its value every time its model binds to a different value.
9. What are directives? 
Directives are special markers on a DOM element that tell the html compiler to attach a specified behavior to the DOM element. Directives start with ng-prefix. Some of the built-in directives include ngClass, ngApp, ngRepeat, ngModel, ngBind and ngInit
10. List the different types of directives.
There are four types of directives:
  • Comment directives
  • CSS class directives
  • Attribute directives
  • Element directives
11. In what ways can you use a directive? 
You can use a directive as an element, attribute or class name. To define the way your directive will be used, you need to set the restrict option in the directive declaration. The restrict option can be set to:
‘A’ - Only matches attribute name
‘C’ - Only matches class name
‘E’ – Only matches element name
You can combine these restrictions to produce needed results.
12. Explain what a digest cycle is in AngularJS?
During every digest cycle, all new scope model values are compared against the previous values. This is called dirty checking. If change is detected, watches set on the new model are fired and another digest cycle executes. This goes on until all models are stable.
The digest cycle is triggered automatically but it can be called manually using “.$apply()”.
13. Which are the common ways of communication between modules of your application, using core AngularJS functionality?
The common ways of communication include:
  • Using events
  • Using services
  • By assigning models on $rootScope
  • Directly between controllers using ControllerAs and other forms of inheritance
  • Directly between controllers using $parent, $$childHead, $$nextSibling
14. Explain what the link function is and how it differs from compile.
The link function combines the directives with a scope to produce a live view.
The link function is responsible for instance DOM manipulation and for registering DOM listeners.
The compile function is responsible for template DOM manipulation as well as the collection of all the directives.
15. Explain e2e testing of AngularJS applications.
End-to-end (e2e) testing involves testing an application from start to finish to determine whether all the components are working properly. It catches issues within an application related to integration and flow.
16. What is dependency injection?
Dependency injection is the process where the dependent objects are injected rather than being created by the consumer.
17. What are the benefits of dependency injection?
Dependency injection has two major benefits: Testing and decoupling.
18. What is Single Page Application (SPA)? 
SPA is the concept whereby pages are loaded from the server not by doing post backs, rather by creating a single shell page or master page and loading the web pages into the master page.
19. How can SPA be implemented in AngularJS?
SPA can be implemented with Angular by using Angular routes
20. How can digest cycle time be decreased?
Digest cycle time can be decreased by decreasing the number of watchers. To do this you can:
  • Use web worker
  • Work in batches
  • Cache DOM
  • Remove unnecessary watchers
  • Use one-time Angular binding

Conclusion

Now that you’ve read all the AngularJS interview questions and answers above, you are a step closer to passing your interview and getting your dream job.
If you feel that you need to refresh your knowledge on some concepts and master front-end web development with Angular, consider taking  Angular Certification training course. It’s affordable and

Angular 6 Interview Questions

Angular 6 Interview Questions

#1 Question

List some new features comes with Angular6

Latest Key features of Angular 6
  • Added support for creating Custom Elements based on Angular Components.
  • Animations: expose element and params within transition matchers.
  • Bazel: change ng_package rule to APF v6
  • singleline, multiline and jsdoc comments are now supported
  • compiler-cli : add resource inlining to ngc
  • support for TypeScript 2.7
  • Require node 8 as runtime engine

#2 Question

Explain Ivy Renderer in Angular?

#3 Question

What is Bazel and Closure Compiler in Angular6?

#4 Question

Explain Service Worker in reference to Angular JS

#5 Question

Write command to generate a component in specific module in Angular cli?

You can generate a component in specific module in AngularJs by running below commnad on CLI.
ng g component component_name --module=module_name

#6 Question

How to generate a module in Angular?

In order to generate a module in Angular, cd to the current project directory and below command.
ng g module module_name

#7 Question

Explain Zone in Angular?

Zones are a kind of performance setting that empowers us to catch into our anachronistic tasks.
Zones in angular APIs increase the performance by executing our code exterior to the angular zone. It helps in preventing Angular from the governing unwanted alter detection assignments.

#8 Question

How to update or upgrade angular cli version

In order to upgrade angular-cli package that was installed globally in your system, you need to run following commands
npm uninstall -g angular-cli
npm cache clean or npm cache verify (if npm > 5)
npm install -g @angular/cli@latest
Instead of upgrading global version of angular-cli you can also upgrade the local version for specific project y running following commands:
rm -rf node_modules
npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest
npm install

#9 Question

List some Inbuilt Pipes available in Angular

Below are the list of few Pipes available in Angular Js
  • DatePipe
  • CurrencyPipe
  • AsyncPipe
  • DecimalPipe
  • TitleCasePipe
  • JsonPipe
  • SlicePipe
  • PercentPipe
  • UpperCasePipe
  • LowerCasePipe

 

10 Common Interview Questions & Answers for Freshers

10 Common Interview Questions & Answers for Freshers Q1. Tell us about yourself. Here you are definitely not going to tell the int...