Monthly Archives: September 2016


Top 10 things to be prepared before A technical interview

The job interview process is a tough road with several pitfalls that can catch job seekers off-guard and can cause great opportunities to fall by the wayside. In this article, we have explained you how to face for a technical interview. Explore this article and know the top things one has to keep in mind to crack the interview.

As developers and IT pros you need to do all the things, everyone else does to prepare for a job interview. The major of the whole process one has to deal with is a technical interview.

Many companies have technical interviews for top candidates. This is a time-consuming process for the employers and a stressful addition in the interview process for the candidates.

If you are really serious about getting a job, a little homework is not going to slow you down. So, let’s get started.


In a technical interview or in any job interview, communication is a deal-breaker. Interviewers don’t know why should they hire you. That is the reason you need to be articulate through your answers to their questions. Organizations always want to see the candidate think in “real time”. Though you may be brilliant at what you do, but in an interview, you have to be able to communicate with this brilliance.


The best resource is the job listing itself. Human Resources puts a lot of time, thought and effort into these, and they will give you a deeper insight into the technologies used at the prospective organization and how you may apply your knowledge and skills to the problems.


If you know the job description, it is important to talk about it and it is important to express how you solve the problem they are looking to fix. Make sure you really understand the technical requirements outlined in the job description.


Brush up on the aspects of the prospective programming language that may be rusty to you. Expect the questions ranging from the basics to higher-level concepts. What you are going to be prepared as a candidate is going to demonstrate your programming skills.


When you are getting ready for technical interviews or for other interviews, you always need to mentally focus and put yourself at ease. On the day of your interview, you need to be in the right mind-set. Mentally preparing yourself is always important. Most of the things are directly dependent on the mind-set that you carry to the interview from a preparation standpoint.


When the interviewer asks you a technical question, make sure that you clearly understand the question before you plunge in. If you don’t answer the question, it doesn’t mean that you are dead in the water. Try to answer at least what you know, instead of leaving it blank.


Each set of questions will be unique to the applied position and range from fundamentals to higher-level principles. You can also look online to find more common technical questions associated with your particular arena of knowledge.


Interviewer always focus on the question “Why?”. It might start with “what” but ends up with “why”. Always be prepared to give inside information by answering “how” and “why” parts of the question.


During your work, there might be something that you consider as your best achievement. It is important to describe it in such a way that the interviewer feels that you have done something extraordinary before. So, prepare a believable story on how your abilities helped you to complete that task given. It is important to prepare this because it takes time to dig your memory and find situations.


Many interviews end up flatly. Instead use this time to express your enthusiasm for the role and to let the interviewer know why you are the right person for the job. This is a great time to work in some of the points that you wanted to be sure to express to the hiring managers.


This question gets repeated in every interview. Here you don’t actually care about the answers, but you should make yourself look good by asking “smart” questions.


Jenkins Vs Bamboo

While considering Continuous Integration (CI) for your project, one has to think of tools that are readily available out there. Few such names that come to our mind as Enterprise level CI servers are Jenkins and Bamboo. These are widely used by some of the major companies around the world.

Jenkins is an open source Continuous Integration tool written in Java with more than 400 plugins available to extend its usage. Whereas, Bamboo is a commercial product from Atlassian. It also has multiple plugins to customize its usage. A user can extend the functionality of the above products by writing their own plugins using the SDK’s provided.

So, let’s explore this article and know more about these popular tools.


* Jenkins supports multiple build tools such as Maven, Ant, and Make.
* Jenkins is a popular open-source tool and it is easy to integrate multiple plugins for build execution purposes.
* It manages and controls the development lifecycle processes such as build, document, test, * package, stage, deployment, static analysis and much more.
* Jenkins is an open source and it is easy to use and setup.


* It does not perform automatic branching or merging.
* A user can setup Jenkins to watch out for any code changes in places like SVN and Git.
* Combining Jenkins with Ant, Gradle, or other build automation tools, the possibilities are limitless.
* Jenkins can be extended by additional plugins for building and testing Android applications or to support the Git version control system.


Jenkins can be started through the command line or can run in a web application server. Under Linux as a service, a user can also install Jenkins as a system service.

If you have installed Jenkins locally, you can find it running under the following URL: http://localhost:8080/


While setting up a project in Jenkins, a user will find the following options:
* Associating with a version control server.
* Triggering builds.
* Execution of Shell scripts, Bash scripts, Ant targets, and Maven targets.
* Publishes JUnit test results and Javadocs.


* Bamboo supports programmed stretching and combining.
* It also supports multiple build tools such as Maven, Maven 2, Maven 3, and Make.
* Bamboo incorporates well with Atlassian suite(Jira, Bamboo, Bitbucket, Stash and Confluence).
* If Jira is used for bugs and issue management, and Confluence for documentation, we can create a ticket in Jira for a bug/issue directly from the documentation generated in Confluence and create a build job from the Jira ticket itself.
* It can do automatic branching or merging via web hooks to Git, Bitbucket Server(Stash) or Mercurial and can perform automated builds once the code is integrated to the Development or Feature branch in Stash, Git and Mercurial.
* It can do automated deployments to the production server and can also run parallel jobs.
* There are many plugins available in the Atlassian store to facilitate smoother build execution and enhanced reporting capabilities in Bamboo.
* Bamboo is the next popular CI tool after Jenkins and is a licensed software with LTS(Long Term Support) provided by Atlassian.
* It is available as an Windows and Linux service.


* Configure the default local agent and set JDK and builder capabilities.
* Integrate with a VCS for continuous deployment.
* Always associates with a project.
It defines the trigger that will initiate the build.


Both the tools have equal importance when compared to each other on the basis of its functionality. The choice always depends on the need and the requirements of the project.


How to evaluate if your web is secure or not?

Many people are storing their personal information on their computers. It is always important to protect yourself from internet predators who are looking to gain access to your files. One of the many ways they can do is, by attacking your computer or tries to gather your information from an infected or malicious website you have visited. The best thing one can do is to avoid malicious websites altogether. Explore, this article and know how to identify the malicious websites and how to be safe.

web sucure

Things to look for in a secure website:

When visiting a website which asks for sensitive information such as credit/debit card details or your social security number, the first step you can take in securing your privacy is by creating a strong password. Also, it is important to check that the information you have entered online is encrypted or not.

Check the SSL certificate:

Look at the URL of the website. If the URL begins with “https” instead of “http” then the site is secured using an SSL certificate. SSL certificates secures all the data as it is passed from your browser to the website’s server. To get an SSL certificate, the company must go through a validation process.

However, there are few other levels of validation and some of them are easier to get than others. The lowest level of validation is Domain Validation (DV), it validates the ownership of the domain and not the legitimacy of the organization requesting the certificate.

The highest level of validation, Extended Validation (EV), is the safest and extensive. With EV the company requesting has to prove their identity as-well-as their legitimacy as a business. Also, a user can tell whether the site has an EV certificate or not by checking the address bar. Browsers show a green address bar with a lock icon for websites with EV certification.

Look at the domain:

Cyber assaulters will sometimes create the websites imitates the existing website and tries to trick people into purchasing something or logging into their site. These sites look like the existing site.

To avoid these kinds of attacks, always look at the domain of the site you are in. If you get an email from your bank or another online vendor, don’t click the link in the email. Type the domain into your browser to make sure you are connecting to the right website where you intended to be.

Check the properties of the links:

Right click on the hyperlink and select “properties” will reveal the true destination of the link. Check whether it is taking to the same site or not.

Protect yourself:

* Utilize your internet browser security tools: Always install the most current version of your web browser. Most of the browsers have sophisticated filters which can identify and warn you of potential security threats.

* Check whether the proper online protection tools are enabled for your anti-virus software.

* A user can also download an add-on for their browsers that are specially designed for identifying unsafe elements of the website.

Take advantage of your search engine security features:

Let us consider an example of Gmail:
1. Sign-in to your Gmail account.
2. Click on the gear icon which is located on the top right corner and select mail settings.
3. In the General tab, set ‘Browser Connection’ to ‘Always use https’ or ‘Don’t always use https.’
If you’ve never changed the setting before, no radio buttons will be selected, even though the default is indeed ‘Always use https’.
4. Click on save changes.
5. Manually change the URL to to start accessing Gmail via http.

security features


What’s Kanban and how is it being used?

Finding ways to do things more efficiently is becoming a necessity – no matter what and which business you are in. Lean is a general term used to minimize the costs in high volume production lines. Though Lean methodologies were developed for manufacturing environments, many Lean principles can be applied to any type of business or activity such as software development to accounting systems to household task.

Most of the people are familiar with the Lean as it is a toolbox that contains a variety of tools. Different tools can be applied according to the different activities or process. One of the most popular and useful tool is known as Kanban. So, let’s dive deep in and know about Kanban and how it is being used.


By this point you might be wayfaring, what Kanban is?

A Kanban is a card containing all the information to be done on a product at each stage along its path to completion and which parts are needed for subsequent processes.

These cards are generally used to control work-in-progress (WIP), production, and inventory flow. A Kanban system allows a company to use Just-in-time (JIT) production and ordering systems that allows them to minimize their inventories while fulfilling customer demands.

Kanban in software & IT:

In the world of software & IT, the definition of Kanban has undergone its own evolution and elaboration, especially over the last 3years. The Kanban is considered as a management method for managing and improving service delivery (in both software, IT and not non-IT) in a slow evolutionary manner. The 3 major fundamental guiding principles of Kanban method are:

• Start with your current process.
• Agree to seek an evolutionary approach to change and improve.
• Respect the current roles and responsibilities of the team/ organization.

Why Kanban?

Vivid changes away from high product throughput and high capacity loads towards the new idea of lower production times and work-in-progress have headed to the idea of incorporating Kanban systems in manufacturing industries.

These systems are most commonly used to implement the pull-type control in production systems aiming at reducing costs by minimizing the WIP inventory.

This allows the organization the ability to adapt the changes in demand.

A pull-type production line is a sequence of production stages performing different process steps where every stage consists of several workstations. The flow of parts through the overall facility is controlled by a combined push or pull control policy, which is established by the Kanban’s.

How to get started using Kanban:

The hardest part of any task is getting started. Knowing which steps to implement is the key. Here is what you need to do to get started with Kanban.


The very first thing to do is to identify the major processes in your organization and identify the steps involved in the individual process. Where do tasks come from? How they are prioritized, defined, and assigned? What are the steps to be involved in completing the task? This would be the workflow and each step gets its own column on the Kanban board.



What is Apache Spark? Why there is a serious hiss going on about this? If you are in Big Data analytics business, should you really care about Spark? We hope this article will help you to answer some of the questions raised in your mind in the recent past.

Apache Spark is a powerful open-source processing engine for Hadoop data which is built around speed, easy to use, and sophisticated analytics. Apache Spark is primarily a parallel data processing framework that can work with Apache Hadoop to make it immensely easy to develop fast.

Let’s go through this article and know about the top 10 things of Apache Spark which are being highlighted in the Big data world.

1. Lighting fast processing

When it comes to Big Data processing, speed always matters. A user always looks for processing a huge amount of data as fast as possible. Spark enables the applications in Hadoop clusters to run 100x faster in memory, and 10x faster on disk. Spark stores the intermediate processing data in-memory. It uses the concept of a Resilient Distributed (RDD), which allows it to transparently store the data in memory and persists it to disc if only it’s needed.

2. Ease of use:

Spark lets the user to quickly write applications in Java, Scala, and Python. This helps the developers to create and run their applications on their well-known programming languages. It comes with the in-built set of 80 high-level operators.

3. Supports sophisticated analytics:

In addition to “map” and “reduce” operations, Spark also supports SQL queries, streaming data, and complex analytics such as machine learning and graph algorithms. Also, a user can combine all these capabilities seamlessly in a single workflow.

4. Real-time stream processing:

Spark can also handle real-time streaming. Map-reduce majorly handles and process the data which is already stored. However, Spark can manipulate data in real time using Spark Streaming.

5. Ability to integrate with Hadoop and existing Hadoop data:

Spark can run autonomously. Apart from that, it can also run on Hadoop 2’s YARN cluster manager and can read any Hadoop existing data. That is one of the biggest advantages. This feature of Spark makes it suitable for shifting the existing Hadoop applications if that application use case is suitable for Spark.

6. Runs everywhere:

Spark runs on Hadoop, Mesos, Standalone, and in the Cloud. It can access varied data sources including HDFS, Cassandra, HBase, and S3.

7. Spark supports lazy evaluation of Big Data queries:

Spark also supports lazy evaluation of Big Data queries, which helps the optimization of the steps in data processing workflows. It also provides higher-level API to improve developer productivity and a steady architect model for Big Data solutions.

8. Optimizes arbitrary operator graphs:

Spark offers normal execution model that can optimize arbitrary graphs and supports in-memory computing, which process the data faster than disk-based engines like Hadoop.

9. Spark offers interactive shell for Scala and Python. This feature is not yet available in Java.

Spark also can handle real-time streaming. Map-reduce majorly handles and process the data which is already stored. However, Spark can also manipulate data in real time using Spark Streaming.

10. Active and expanding community:

Spark is built by a wide set of developers from over 50 companies. The project started in 2009 and now more than 450 developers have contributed to Spark already. It consists of an active mailing list and JIRA for tracking the issues.


How to convert angular js1.x filter to angular js 2.0 pipes?

Create pipe class
import { Pipe, PipeTransform } from ‘@angular/core';
@Pipe({name: ‘filter1′})
export class ExponentialStrengthPipe implements PipeTransform {
transform(value: number, exponent: string): number {
return exponent; // do something with your vallue
After that in your component add and include pipe
import { Component } from ‘@angular/core';
import { ExponentialStrengthPipe } from ‘./exponential-strength.pipe';
selector: ‘power-booster’,
template: `

<h2>Power Booster</h2>

<p>Super power boost: {{2 | filter1}}</p>
pipes: [ExponentialStrengthPipe]
export class PowerBoosterComponent { }


Vagrant or Docker which one is better to use to create an isolated environment?

The short answer is that if you want to manage machines, you should use Vagrant. And if you want to build and run applications environments, you should use Docker.

Vagrant is a virtual machine director, it permits you to script the virtual machine arrangement and additionally the provisioning. Be as it may, it is still a virtual machine contingent upon Virtual Box (or others) with a tremendous overhead. It obliges you to have a hard drive document that can be enormous, it takes a considerable measure of ram, and execution might be bad.

Docker then again utilizes bit cgroup and namespacing by means of lxc. It implies that you are utilizing the same piece as the host and the same record framework. You can utilize Dockerfile with the docker manufacture summon so as to handle the provisioning and design of your holder.


How the Internet of Things(IOT) Will Change Cloud Computing?

The Internet of Things(IOT) ecosystem includes any form of technology that can connect to the internet. This means connected cars, wearables, TVs, smartphones, fitness equipment, robots, ATMs, vending machines, and all of the vertical applications, security and professional services, analytics and platforms that come with them.

The goal of the IOT is to make these applications, services, and devices as ubiquitous as possible, all while enabling the gathering of vast quantities of data about user and consumer preferences.

With the help of cloud computing, IOT will dramatically change the way we live our daily lives as well as what and how information is managed. Thanks to its on-demand nature, cloud computing is available for use anytime and anywhere so long as the device is connected to the internet based on the software as a service (SaaS), platform as a service (PaaS), or infrastructure as a service (IaaS) service model.

The cloud is the only technology suitable for filtering, analyzing, storing and accessing IoT and other information in useful ways, depending on the deployment model used.


Monk vs Mongoose for Mongodb

Both Monk and Mongoose are distinctive, despite the fact that they are two ways to deal with the same fundamental issue. Mongoose is a very advanced all out ORM. More components, yet more many-sided quality. Monk is smaller in scope and thus easier to understand

The better thing is begin coding with the essential mongodb driver module straightforwardly. When you see how that functions, and how parts of it are irritating, you will comprehend the advantage of Monk and can give that a shot to check whether you like it. I wouldn’t prescribe mongoose to a beginner. Mongodb is as of now sufficiently dubious to learn keeping in mind mongoose can be useful, it’s API is entirely otherworldly and accept you definitely know the precarious parts of mongodb.