On hearing about walking interviews, the first image in your mind will appear is of “mass
interview”, many people sitting in a queue. There are many people who can easily face
scheduled interview, but when same people asked to face the walking interview they become
nervous and fumble. To avoid this fumble, here are simple tips, which can boost your
confidence before facing walking interviews.
Tips for preparing walking interviews
Be calm and poised
The first thing is to remain calm and poised, no matter how many people are there for the
interview. This will help you to focus on the questions asked and answer them precisely. While
facing the interviewer, you have to make eye contact with them and try to keep your answer
short unless your interviewer asks you more detail on it.
Organize your documents
Always keep your documents in an organized manner. So when you are asked for documents,
you can easily hand over to interviewer without shuffling and juggling into the files, in such tense
condition. It will also save your time.
Before going for walking interview, make sure that you read the walking advertisement carefully
and get familiarize with the company’s requirement. Also, do enough research about the
company’s detail like their mission, vision and working culture.
Update your resume
Always carry with you an updated copy of resume, and only mention those skills in it which you
are confident about. Also be prepared with the common questions in an interview like “Why
should we hire you?”
It always works “Honesty is the Policy”. No person in this world has infinite knowledge of
everything. So when you are not sure of your answer or you don’t know, then politely say,
“NO” to the questions.
Be confident but not arrogant
Sometimes to check your confidence, interviewer can twist questions or put you with wrong
questions, while answering them you have to be careful. Answer only those questions for which
you are confident.
Know whom you are meeting with
While going for walking interview always make sure whom you are going to meet. Remember
the name of the person who has called you for an interview or carry the business card of an
interviewer. And don’t forget rule number one, always reach at time and dress well.
Avoid personal remarks
Do not criticize your previous or current colleagues, friends, manager etc. during interview. Also,
do not bring financial aspects into a discussion; it might give wrong impression about you to
your employer, at least try to avoid at the initial rounds of interview. At last make a smooth exit,
with a nice greeting.
Once the walking interview is done, the next step is finalizing the candidates. Few walking
interviews finalize their candidates on the spot, while few left over their decision for second
round or inform the candidate later on after scrutinizing every bit of short-listed candidates.
Consider the following situation. You are at your friend’s place with your laptop and you want to access your home computer to do something. May be you want to start a download or you want to run a program right away. What would you do in this situation? Will you go all the way to your house just to start a download? You already have a laptop at your disposal, so you should be able to use it somehow. You can just connect to your home computer through internet. But what if someone else hacks you while you do that? This is where SSH comes in.
What exactly is SSH?
SSH stands for Secure SHell and it is basically a program to log into another computer over a network. Now why would we want to do that? May be you want to transfer data, run a program, execute some other commands etc. There are plenty of reasons why one would want to access another machine remotely. The good thing about SSH is that it connects you through a secure channel over an insecure network. If you are using a public wifi network, you might be open to attacks. You need to send your credentials to your computer so that the computer knows that it is in fact you who is requesting access. But the problem with insecure networks is that these credentials can be hacked. Hence SSH uses a secure channel over these insecure networks to ensure the safety. If insecure networks are like battle fields, then secure channels are like bullet proof jackets.
How does it work?
SSH provides strong authentication and secure communication between two computers. It uses Public Key Cryptography to authenticate the remote computer and allow the remote computer to authenticate the user as well. SSH uses a client-server model. The server is a big machine which provides a common platform for various people. Clients are people who connect to this big machine and use it for various purposes. The server is like a big house and clients are people who have keys to this house. A server offers various services like storage, computing, routing etc. Depending on the situation, you can use it in different ways.
SSH also supports tunneling. Now what exactly is tunneling? Whenever you want to transfer data over a network, you encrypt it and then send it. Even if somebody sees it, he will not be able to understand the data. But what would you do when you cannot encrypt the data? Or if you just want to send unencrypted data over a network? This is where tunneling comes in handy. Tunneling is used to transfer unencrypted data through an encrypted channel. In order to set up an SSH tunnel, you have to configure an SSH client to forward a specified local port to a port on the remote machine. Have you heard of this software called PuTTY? It’s an SSH client software. You can use it to access a remote machine. Once the SSH tunnel has been established, the user can connect to the specified local port to access the network service. Mac users can directly use ssh via Terminal.
To access a web server (this will open a terminal on the remote machine):
$ ssh email@example.com
To connect to X server (this will enable X11 forwarding):
$ ssh -X firstname.lastname@example.org
If you have a login:
$ ssh -l login_name email@example.com
SSH uses sftp for file transfer. It is an interactive command that uses the same syntax as a standard command-line ftp client. It differs from a standard ftp client in that the authentication and the data transfer happens through the SSH protocol rather than the FTP protocol. The SSH protocol is encrypted whereas the FTP protocol is not. You can just use:
$ sftp firstname.lastname@example.org
There are various commands like put, get, ls etc. They are pretty basic and you can read up more about them if you want.
I’m pretty sure people working in the tech domain are aware of something called Shell Scripting. Were you ever working on a project and felt that some tasks were repeating over and over again? Did you feel that there should be an easy way to automate these things and you don’t have to worry about it every single time you want to run your project? People who have heard about shell scripting and don’t know what it is, you are missing out on a cool weapon in your arsenal. People who haven’t heard about shell scripting, well it’s time to move you into the other category. So what exactly is shell scripting?
What the shell!
To understand shell scripting, we need to know what a shell is. Basically, a shell is an interface between the user and the operating system. On any Unix based machine (Unix, Linux or Mac), you can just open the terminal and you can see the command-line shell. You can parse the directories, move or remove files, display files etc with specific commands. There are GUI shells as well (like the Windows shell), but they don’t give as much freedom to automate as we want. So when we talk about shells, it usually refers to the command-line interface.
Script me up
Now that we know what a shell is, let’s see what scripting means. Scripts are used to automate the execution of tasks that would otherwise need humans to manually do them. For example, let’s say you want to run your project. Every time you want to do it, you have to navigate to the directory, check for redundant files, delete them and run your code. If you don’t want to do it manually everytime, you can always write a script and it will do all these things for you. Scripting refers to the process of writing such scripts.
The sum of its parts.
Combining the above two things, shell scripting means that you are writing code to automate various tasks on the shell. It’s just like another programming language. Why do you need that? Well, a lot of times, you have to parse through huge number of files stored in many subdirectories and collect information, or run a lot of different executables located in different directories whose inputs are dependent on previous outputs from other executables, and so on. When you have to do this every time you change your code, it becomes very tedious and difficult to keep track of it manually.
It starts with a bang!
All shell scripts on *nix machines start with something called hashbang. It’s pound sign followed by the exclamation mark: ‘#!’. The filename has a ‘.sh’ extension. When you run this, the program loader parses the rest of the line and considers that path to be the interpreter program. The remaining lines look pretty much like the commands on the command-line interface. You can use conditional statements and loops as well. The Windows equivalent of this would be a batch file. These files have ‘.bat’ extension and they usually contain a series of commands to be executed on the command line.
A language like Python can do everything you just said. Why do I need shell scripting?
Python is a general-purpose programming language which can be used for both scripting and non-scripting. Shell scripting, on the other hand, is meant exclusively for this purpose. It means you have very close control of what’s happening and it’s morenative. It depends on what exactly you want to do. If you have Python code and you just want to parse through a few files, you should do it within your Python code. But if you want to do a lot of file manipulation and interaction with your OS and executables, then shell scripting would be the way to go.