Wednesday, October 8, 2014

Questions you should ask to a Company when done with the interview

The Questions Everybody Should Ask Their Interviewer


Having interviewed thousands of people over the years, I generally have a formula that I adhere to. I know what sort of questions I’ll ask and what direction I want the interview to take. At the same time, there are also common traits that I look for in the people I’m meeting.
What you have to remember is that a vacancy is available because the company has a need or a problem. You have to position yourself as the best solution to that problem - and the mere fact that you have got to this stage means you are in their top bracket of candidates. So as much as the interviewer will ask you questions, you need to do the same. The company needs to sell themselves every bit as much as you.
If you get to the end of an interview and almost all the questions have been asked by the person at the other end of the table, then quite frankly it is highly unlikely you will get the job. Not only does it make you seem unconfident, but it gives the impression that you’re not actually that committed to getting the job. If you really want to work for somebody, then it makes sense to find out as much about them as possible – in particular things which you can’t glean from a mere job advert.

Here are some questions you should be asking at every single interview.



What are your short, medium and long-term goals?


This is one which always impresses me because it shows the candidate is interested in the vision of the business. I have said before that companies don’t hire people who are merely looking for a job – they hire people who want to work for them. Ask the interviewer where they see the business heading over the next year, and in particular, what their specific goals are for you and your department. As well as making a great impression on the company, it gives you an idea of what sort of expectations will be placed upon you.

What’s the culture like?


A job is not just a series of tasks, it is also the place where you will be spending a substantial amount of your time. Therefore you need to ask the interviewer what the company culture is like, because it should match up with what you want. For example, are you somebody who enjoys a high level of interaction with colleagues, or do you prefer autonomy? What managerial style do you work best under? Asking about the culture shows that you have a high attention to detail – and that’s something which goes down extremely well with any hiring manager.

What are the opportunities for progression?


You will probably be asked questions like: ‘Where do you see yourself in 5 years’ time’ – this is something I discussed in a previous blog. You then need to follow up on this and see if the company offers you the chance of progression. Remember - this doesn’t mean they need to offer you exactly what you want in 5 years. If you said you want to end up in a Directorship role, don’t expect the interviewer to say that’s exactly what they can offer you! But what they should provide is a rewarding environment where you have the opportunity to expand your skill set and climb up the ladder. A good company will not be put off by your ambition; in fact they will admire and encourage it.

How will I be measured?



Every job has its Key Performance Indicators, and although you may not get all of them in huge detail at the interview stage, you should at least have a broad idea. It very much depends on what the role is of course – the measurements for someone in a Finance role will be different to someone in Marketing for example. But you should walk out of that room knowing what you have to do to hit your targets and add value to the business.

Sources: LinkedIn Pulse

Sunday, October 5, 2014

RESTful API development


This is how a RESTful api development can be done using Java Springs.


REST + JSON API

This video gives the complete understanding on how you can design for REST + JSON API.



Friday, May 9, 2014

Tools

Thinking about a tool, what comes into mind first? Hammer?
So tool can be anything that makes our life easier. It is present in each category i.e. mechanical, electrical, electronics, Software etc. Tool is such a general word to use. Herein my blog since most of the things are technical related to computer industry so I would be describing how software tools makes our life easier.

programming tool or software development tool is a program or application that software developers use to create, debug, maintain, or otherwise support other programs and applications. The term usually refers to relatively simple programs, that can be combined together to accomplish a task, much as one might use multiple hand tools to fix a physical object. The ability to use a variety of tools productively is one hallmark of a skilled software engineer. source: http://en.wikipedia.org/wiki/Programming_tool

Lets talk about Java, which is a programming tool responsible for development of softwares in today's era. Whether enterprise, mobile or general purpose desktop machine independent software Java is used almost everywhere for the development. Java is such programming language tool which provides security, simplicity, portability, robustness and many other pro's all in one hand. The industry today have become so much dependent on this excellent programming tool, that the requirement of development labour has shown a massive growth with this programming language skills.



The graph clearly show the requirement of java developers since the year of 2011.


Thursday, May 8, 2014

Styling Web- CSS

Cascading Style Sheets popularly known as CSS are very popular for providing a look to a web page or sometimes applications. These are generally used in combination with HTML and XHTML. How is the elements in the site going to look is decided with the CSS. 


CSS provides the beauty to a web page. Like how should be the background color of a page should be, what font style should be used and many small small things used for beautification is used with done using a CSS.

Lets study a example for better understand of CSS
I have created a block in div tag in HTML
i.e.

<div class="sample-class" id="sample">
This is a sample block
</div>

Now I want to style this block according to my requirement.

So I will define the CSS class (or may be ID) with the properties of its appearance.

<style>
.sample-class{
width:400px; //defines the width of the above block(sample-class) as 400px
height:300px; //defines the height of the above block(sample-class) as 300px
background-color:#111; //Define the background color of the block as shade of grey #111111(near to black)
color:#fff; //defines the color of the text as white (#ffffff)
}
</style>

Test this fiddle and make modification in it to learn the power of CSS http://jsfiddle.net/BfvC8/

I would highly recommend to visit this site, if people are interested in learning CSS tricks: http://css-tricks.com

For people who are interested in learning CSS from scratch: http://www.w3schools.com/css/DEFAULT.asp

Beta Testing

Two very important phases of the testing are alpha testing and beta testing. But when it comes to real environment Beta testing is one that helps companies, corporates or individuals releasing their applications. 

Whenever a product is developed, it's quality is assured internally by the testing teams. But this is not enough to make the release. We never know what people expect from the application and what all bugs in the system exist or may be some feedback they can come produce (as per user prospective).  It is always a great idea to get the product tested by the actual group of users who are going to use it because it is ultimately made for their convenience. 

There is nothing special that the users does but access the product as normal user does. Some might not be even aware of what actually beta in the site or product means. Whenever a user gives feedback about the feedback is noted down and the team makes the improvement to produce in the final release. In this was beta testing helps corporates to produce their best in software according to end user requirements.

So every time before launching the real product a beta version is launched to make is completely tested by end user and also this version has beta written on it.


As this image suggests, before the actual version of android is made available to users, its beta version is made available to a group of users so that it may be tested well and all the issues are fixed.

Image Credits: http://theflud.tumblr.com/post/6471987342/finally-flud-for-android-beta-testers-wanted

Thursday, April 17, 2014

Usability Testing- A irreplaceable practice

As we all know testing means to examine the application and find out the loopholes in the product as per the requirement. Usability testing is a type of testing in which the product or the software is tested by the experts. This  practice is unavoidable and irreplaceable because it gives the direct review of the real users how they are going to use the system.

In this testing cycle, a team of experts take on the system where they do the user interaction of the system. During this procedure a list of bugs is maintained such that it can be worked upon later. In this way the human made product is tested such that it meets the requirement of user is a user friendly manner. It is mostly conducted with the web applications, mobile apps, softwares, documents, devices etc. It basically measures the ease of use of a software application.

For example, If there is a webpage with a button placed on right side and it is a very important button. Than in testing results it may be concluded to place the button on center rather then on right because the center part of the screen gains more focus of the user. Also, lets say there is a registration form on the page and the submit button only handles action when mouse button is clicked over it, but this should't be the only case for the user. The submit button should also capture the click from the keyboard and not just from mouse. The pro user feels more comfortable when the flow gets connected such he does not have to change his input interfaces.

The goals of  usability testing

The usability testing technique comes under the technique of black box testing technique. And it aims at discovering the error as per users prospective and suggesting the improvement.  It mainly focuses on the areas of accuracy,  performance, recall and emotional response.
These terms can be broadly elaborates as follows:
Accuracy: how many mistakes the user has made? were those mistakes able to be recovered with right information?. How fetal were those errors were to the user?
Performance: How many steps and how much time did it take to complete the basis task?
Recall: Is the user able to recall things after a time of much use?
Emotional response: How comfortable was the user with this system? Did he like it? Will he be recommending this system or application to others?


As stated in the above image strip, the system asked the user to press any key but since we can make out the the system required n for no and y for yes. But since the system was not able to instruct the user well he pressed any other key ('A' here in this case), the system suffered some other results.

Wednesday, April 16, 2014

Techical Blogs - A Tale of technical enthusiast

The world today is driven by technology. Things are going automated thus reducing human labor. The knowledge in the technical arena is growing in exponential. This knowledge needs to be spread and one of most common source of spreading is and promoting are the technical blogs.

Technical Blogs are the blogs which are related to technology like machines, programmings, Software, Applications, Technical Languages, Open source community or anything that requires some technique to solve some of the world's tougher problems. Like if I talk about simple windows or any particular operating system installed on computer that can handle so many tasks and provides a interface between the hardware and other application level software. Its been such a discovery that it changed the course of machines i.e. how machine can perform a particular task as trained by human, is achieved through this operating system. Sometimes simpler ideas involves the biggest of problems solved at its abstract level.

Talking about Email, see how inconvenient it used to be when people just had only mode of communication was USPS i.e. United States Postal Service or The Royal Postal Service of London to send a message from USA to London and vice versa. Now today with simple convenience of email. Just type the mail id on the email client type the message you want to send and bingo message is delivered in even less than a second.
The life is faster so as the mode of communication also, with text messaging service or social media application like facebook, whatsapp  etc, People are connected to each other in the quickest of possible ways and making life moving with quite a high pace. Sharing has been a problem in recent times and even it is right now but technology today has been able to solve these big issues to a great extent. we are habitual of these services and this awe-striking technology, if even for a day we are stolen away from it we start feeling so depressed for unfulfilled. We are surrounded by technology and its a fact that currently each and every person is technology driven.

The blogs on the internet has taken a very effective participation on enriching the knowledge among individuals about technology. Not only it benefits the public reading the blog but also gives challenge to the person writing it to be well prepared before presenting it in front of the world. Oh, Common the world is going to read it, technology attracts everyone not necessary if he is belonging to technical background or not (by this I am talking about engineers, scientist and mathematicians). Technical blogs makes a persons mind open to think out of the box as well and give a collective summary of the knowledge that he owns. So you see in a way these blogs become a social media of idea sharing and imparting knowledge of what you have.

Saturday, March 15, 2014

QR Code

Quick Response Code Popularly known as QR Code is a two dimensional bar encoding scheme. It can encode a greater amount of Information in it involving various encoding modes (numerics, alphabetics, Kanji, Byte or Binary). It was first designed by Japanese automotive industry. 

A bar code is a machine readable optical label that contains the specific information about the item to which it is attached or associated. A QR code is the 2D extended version of the same that stores much more data and can also be read very fast as compared. It has applications in various domains like: product tracking, time tracking, document management, information transfer in a encoded manner, item identification etc.

The components present in the QR Code scheme is its white background and Square grids on its edges with information stored in the form of patterns.These color schemes were decided originally as black and white only but now it can be customized to any color combinations like blue grids over white background. Data can be extracted from the combination of both horizontal and vertical components of the QR code

Today QR code has become popular with numerous of applications with for instance if a user wants to go to a web site he can just scan the QR Code of that company using his mobile camera (obviously using his QR Code readability application) and he will be redirected to that site with an effort required in typing it. Users can create email, text message, store information, send information using QR Code. QR code today has become a very popular method of getting limited but required amount of information in a quick way.

So here is my QR Code to my linkedin profile like, try it and you will get to practically know its usability.


Tuesday, March 11, 2014

Cyber Security

What?

Cyber security often termed as Information Technology security too, primarily means protecting computer, programs or applications, networks and protecting information breach from unauthorized access, modification in information or destruction.

Importance?


Not only Private Organizations but Government, medical hospitals, research institutes, financial institutions, military intelligence also store a great deal of sensitive information on their computers and networks. With the growing amount of threat in the form of cyber attacks, this ultra sensitive information is needed to be protected for national security.

During a Senate hearing in March 2013, the nation's top intelligence officials warned that cyber attacks and digital spying are the top threat to national security, eclipsing terrorism. Source: http://www.trcsolutions.com/NewsRoom/Articles/Documents/Understanding-Cyber-Security-Federal-Grant-Writing.pdf

Terminology


Access:  
Whenever a user is authenticated, he is provided with the access of the system where he is allowed to change, read or take information based on the rights provided to him.

Blacklist
It's a list of entries may be (IP Address, resources, etc) that are blocked from access.

Bot:
It can be a software program that can automatically perform a sequence of steps. This can be of either protective or destructive nature.

Cloud Computing
It's latest of the models present today to provide the resources to the user based in the request made, thus avoiding wastage of resources.

Cryptography
It is the art making system secure via means of keys and other encryption techniques. A system information can be made secured, confidential and authenticated before access.

Some others are: Enterprise Risk Management, Cyber Space, Data Breach, Digital Forensics, Intrusion Detection, Key, Malware, Passive Attack, Penetration Testing, Phishing, Root, Software Assurance, Virus and Whitelist etc.



Tuesday, March 4, 2014

Open Source Software

Open Source Software is available with their source code available for free. Anyone with the knowledge of development can make changes in its source code and may produce modified version. These open source software in today's era have started taking over most of the present software (Closed source software) , which are available at some price.



Linux is a very famous open source Operating System.

Linux:

Linux is a very powerful and the famous operating system available today. It has many other flavors for satisfying various needs. To name some: Ubuntu, Mint OS, Kubuntu, Zorin OS, Fedora, Backtrack etc.

Artificial Intelligence Open Source Community

I would like to provide some examples over AI (Artificial Intelligence) Open Source Software in various categories.

  • General
    • OpenCog: A project that aims to build an artificial general intelligence (AGI) framework. OpenCog Prime is a specific set of interacting components designed to give rise to human-equivalent artificial general intelligence.
  • Computer Vision
    • AForge.NET is a Computer Vision, Artificial Intelligence and Robotics library for the .NET Framework.
    • OpenCV is a Computer Vision Library in C++.
  • Machine Learning
    • R Programming Language is an open source language for Data mining, statistical computing and graphics.
  • Robotics
    • ROS is an Open Source Software framework used for the Development in Robotics.

Tuesday, February 25, 2014

LinkedIn Summary


I am delighted to share about myself to you as a purpose of seeking internship in the Software Development domain. Currently, my status is of a student at San Jose State University, and I am studying Master of Science in Computer Science. With my prior experience in Software Development industry and striking interest in Computer Software Development, I chose to be a part of the Computer Science group.

I have been efficiently involved in the following domain:

Middleware Technologies Development

With my first job as Junior Software Engineer at METTL Pvt. Ltd. My responsibilities involved the task of API creation and integration for Web Based recruitment application. My expertise was in the field of Java Springs, Oracle Database, Mongo DB and Mockito.

Web Front-End Development

I have been extensively involved with HTML 5, CSS 3, Javascript, JQuery and other frameworks of Javascript for front-end development and technologies. Besides all these developer tasks, I have also been a speaker in seminars over Web technologies like HTML 5 and CSS 3.

Technical Research Papers

I have published two International Journals in Behavioural Biometrics AND Signal and Image processing Domain.

All work and no play makes Jack a dull boy so apart from all these techie stuff I am a great enthusiast of sports like Volleyball, Basketball and Badminton.