Saturday, 8 August 2020

TOP 20 Software Engineer Programming Interview Questions And Answers

Dinesh Wadhwani


Q1. What is 29 in binary and hexadecimal in binary ? 

ANS : it's 1 1 1 0 1 in hexadecimal it's 1d question number 


Q2. What is a singleton class ? 

ANS : A class that can only be instant paned once 


Q3. Explain inheritance in object-oriented programming ?

ANS : A class can inherit the implementation of its parent class while also extending and/or changing parts of it this allows for reuse of code that classes have a lot in common 


Q4. With threads a and B and resources x and y describe a deadlock situation ? 

ANS : Thread a Reserve's resource X then thread B Reserve's resource y thread a without releasing X then requests resource Y but have to wait for thread B to release it meanwhile thread B without releasing Y requests resource X but have to wait thread a to release it both threads are now waiting for each other to release their resources but none will until the other does 


Q5. What is a non functional requirement ?

ANS : A non functional requirement specifies general behavior requirements of the system it describes that you want your system to be rather than what it should do some non-functional requirements include accessibility maintainability and security 


Q6. What is a functional requirement ?

ANS : A functional requirement describes the specific functionality you want of your system 

 

Q7. What are steps of the waterfall ?

ANS : 1. Method requirements 

2. Design implementation 

3. Verification and maintenance

 

Q8. In scrum what is the purpose of the daily stand-up meeting ? 

ANS : The purpose of stand-up is for the team to get up to speed on what has been done and what will be done that day and to bring attention to real or potential obstacles in development the standard meaning works as follows each member of the development team answers three questions in turn one what did i do yesterday to what will I do today three have I discovered anything that might impede our progress towards the Sprint goal

 

Q9. What are the benefits and disadvantages of paper prototyping ? 

ANS : The main benefits of paper prototyping are that is quick and cheap and easily allows an entire team to take part in the design process disadvantages the major disadvantages is that it is hard to emulate the true field of the system and certain functionality such as scrolling data entry and dynamic elements often paper prototypes will only be able to show the general outline or show of a few specific functionalities of the system

 

Q10. What is the purpose of a sequence diagram and event diagram ?

ANS : A sequence diagram shows the interactions sent messages and return values between objects and in what order they are sent this gives an idea of the runtime flow of the application 


Q11. What is modularization ?

ANS : Modularization is a technique where the software is divided into several modules that work independently of each other the main benefit of this is better maintainability 


Q12. Can you describe the model-view-controller architecture ? 

ANS : The MVC architecture is used most commonly for GUI applications and means to separate the data from the user interface the model layer holds the data the view layout outputs the data to the user and the controller is responsible for making changes to the model based on user input 


Q13. What is direct graph ?

ANS : A cyclic graph ad a G is a directed graph without any cycles 


Q14. What is the difference between black box and white box testing ? 

ANS : White black box testing only tests a function for correct output given in an input white box testing also tests if the implementation is correct 


Q15. What is the difference between a queue and a stack ?

ANS : A queue is based on the FIFO first-in first-out principle which means the first item to enter the queue is the first to be removed like the queue at the cash register a stack on the other hand is based on the LIFO last in first out principle which means the last item to enter the stack is also the first to be removed like a stack of plates 


Q16. What is a recursive function ?

ANS : A recursive function is a function that calls itself and each function call one or more parameters are changed the recursion continues until a base case is reached and the recursion is result 


Q17. How does the a asterisks algorithm work ?

ANS : A asterisk is a path finding algorithm that works on weighted graphs with heuristic function that estimates the cost of traveling from node and to the goal node the notes to be considered at each step is stored in a collection usually a priority queue it starts by adding every node to the that is adjacent to the start node in the queue with their estimated total cost based on the formula F in parentheses n equals G in parentheses n plus h in parentheses and where G in parentheses end is the actual cost from the start node to the node and while h in parentheses n is the heuristic function at each iteration the node with the smallest estimates cost F in parentheses and is expanded a path is found when the goal node is the one chosen for expansion alternatively no path is found if the cube becomes empty 


Q18. In SQL with unique keys what does inner and outer join do ? 

ANS : Both operations join two tables inner join works as the intersection between the tables so only keys that exist in both tables will be kept in the joint table outer join works as the union between the tables so all rows are included in the joint table 


Q19. What is an SQL injection and how are they prevented ?

ANS : SQL injection is when SQL statements are entered into data fields that are to be stored in an SQL database the most usual mitigation techniques include parameterizing statements escaping characters with special meaning in SQL pattern checking and limiting database permissions


Q20. Why do you want to leave your current job? Why are you leaving your job and why do you want to work for us? 

ANS : I want to leave my job because I am looking for a fresh challenge with a company that has exciting and ambitious plans for the future, and one that will also use my skills and technical SQL abilities to the full. My employer has been great and we have achieved some fantastic things whilst I have been there, but I am now ready for a new challenge, and I would like that challenge to be with your company.

Top 23 SQL Interview Questions Answers

Dinesh Wadhwani

 

Q1. What is SQL? 

ANS : “Structured Query Language, more commonly known as SQL, is seen as the standard for managing data kept in relational database management systems. For example, SQL statements are used to carry out tasks including updating the data, and also retrieving specific data from a database.” 


Q2. Why do you want to work for our company in this SQL position? 

ANS : “Within any SQL job, it’s really important to choose your employer carefully. What I mean by this is, in order to carry out your job properly, you need to work as part of a team that has clearly defined goals, sets high standards and also works collaboratively to achieve all company objectives. From what I found during my research into your organization, you are very well thought of by other people who work within the industry, you have exciting and ambitious plans for the future, and it is clear you give your staff the support they need to grow and develop within their roles.”


Q3. What is MySQL? 

ANS : “MySQL is an open-source relational database management system that is based on SQL, most commonly used for web databases. It was co-founded by Michael Widenius and the ‘My’ aspect of MySQL is the name of his daughter. The remainder is obviously an abbreviation for Structured Query Language. MySQL is utilized by a variety of database-driven web applications. These include WordPress and Joomla amongst others. It is also used by many of the world’s most popular websites, including YouTube, Facebook and Twitter. Written using C and C++ languages, MySQL supports the major platforms you’d expect such as macOS, Linux, and Windows.”


Q4. What's the main difference between SQL and MySQL? 

ANS : “So, SQL is often used to access, manipulate and update the data within a database, whereas MySQL is a relational database management system that keeps the data within the database organized. In other words, SQL is a language created to manage relational databases, and MySQL is an open-source relational database management system, based on SQL.” 


Q5.  In SQL, what are joins? 

ANS : “There are four main types of joins in SQL. These are FULL JOINS, RIGHT JOINS, LEFT JOINS and INNER JOINS. Joins basically combine the rows from two or more tables.” 


Q6. What is an index and why is it useful to have? 

ANS : “An index is useful because it allows for the faster retrieval of records from a table. The index creates an entry for each value, which in turn, makes it much faster to retrieve the data required, or in other words, an index is a pointer to data contained within a table.” 


Q7. If a constraint is added in SQL, what does this mean? 

ANS : “There are many different types of SQL constraints which can be used. Their purpose is to specify a rule for the data within a table, limiting the type of data that can go within the table. The constraint can be added either during the creation of a table, or once it has been created. Constraints can be applied to either the table as a whole or column level.” 


Q8. What are the more common types of SQL constraint and what do they mean? 

ANS : “There are several common SQL constraints. These are PRIMARY KEY, which identifies each record in a table; NOT NULL is used to prevent a NULL value being inserted into a column; FOREIGN KEY, which provides a unique identification of a row or record within another table; and also DEFAULT, which will automatically assign a default value if there has not been a value already specified for a field. There is also CHECK, which is a constraint that is used to verify that all values meet a specific criteria or condition in a field; and UNIQUE, which ensures unique values are always inserted into a column. Finally, INDEX is used to create data and to obtain it from a database with speed.”

 

Q9. So far, you have referred to tables and fields in your answers. What are they? 

ANS : “In its simplest form, a TABLE is a collection of data that is organized into rows and columns. The columns are vertical, and the rows are horizontal. The columns are called FIELDS and the rows are often referred to as records.” 

 

Q10. Tell me what the different subsets of SQL are? 

ANS : “So, there are three main subsets of SQL. Firstly, there is Data Control Language, or DCL, which permits you to control access to the database. For example, you can either grant access to the database or revoke it. Then there is DDL, which is Data Definition Language, which allows you to specify data structures in the database, including deleting tables, creating them or altering them. Finally, there is Data Manipulation Language (DML) which, as the name suggests, allows you to manipulate the data, including updating, inserting, deleting or retrieving data in the table as required.” 


Q11. How would you format SQL server dates? So, how would you format SQL server dates? 

ANS : “For this, the FORMAT function can be used. This function allows the formatting of the date and time. Firstly, I would decide what format I wanted, for example DD/MM/YYYY or MM-DD-YY. If I wanted to get DD/MM/YYYY I would use SELECT FORMAT (getdate(), 'dd/MM/yyyy’).” 


Q12. What is primary and foreign key? 

ANS : “For a database table to qualify as ‘relational’, it needs to have a primary key. A primary key has one or more columns. The data within the columns is then used to identify each row in a table. Basically, these are very similar to street addresses, for example. So, if you think of the rows in the table as the dustbins or trashcans belonging to houses on a street, the primary key is the list of the addresses. Primary key attributes cannot have NULL values. A foreign key is a column in one table. In that table, the values are members of a primary key column in another table. It is possible for a foreign key attribute to accept NULL values and for there to be more than one foreign key in a table.” 


Q13. What is database denormalization? 

ANS : “Denormalization is a method used to improve the performance of a database, allowing the retrieval of data in the quickest time possible. Essentially, the process of denormalization adds redundant database data into a table which in turn enables the performance of the database to improve significantly, as the same data can be put in several places.”

 

Q14. What is database normalization? 

ANS : “Normalization reduces redundancy of data within a database. Normalization is a design technique that places larger database tables into smaller tables and then uses specific relationships to link them. In other words, normalization is the process of putting each piece of data in the appropriate place, using multiple tables. The benefit is keeping data integrity and it makes updating faster, but retrieval of data, can then in turn be slower.”

 

Q15. In SQL, what is a subquery? 

ANS : “A subquery is often referred to as an inner query or inner select. As the name suggests, it is an SQL query nested inside a larger query, such as a SELECT, UPDATE, or INSERT statement, or indeed inside another subquery. A subquery can be used to retrieve data that will be used in the main query. This in turn provides a condition to restrict the retrieval of data even further.” 


Q16. What happens to the data rows in the table when the table contains a clustered index? What happens to the data rows in the table when the table contains a clustered index? 

ANS : “The data rows will be stored in order. Cluster indexes sort data rows based on their key values. When a table doesn’t use clustered index, this is called a heap – in other words, the data rows will be unordered.”  

Monday, 3 August 2020

5 Steps to improve Programming Skills

Dinesh Wadhwani

5 Steps to improve Programming Skills

I have certain steps you can follow to improve your programming skills now. The first thing you need is a programming knowledge and of course right you must have started with any of the language maybe C C++ Java Python or JavaScript and you might be knowing the syntax of it because that's what we do so when you say you are learning a programming language the first thing you learn is a syntax now different languages have different syntax and that's why you know once you learn one language let's just see it is easier for you to learn C++ and then Java because they all follow this same syntactical paradigm another thing is once you have learned this syntax the next thing you have to follow these five steps so that you can work on your skills


FIRST STEP

-> Practice algorithms and data structures now when you learn a language you feel you know everything but that's not the case because when you learn the language you learn syntax

-> If you do if you want to implement it let's say if I give you a problem statement and you have to convert that problem statement into a code and your software it's not the act process first you have to convert that problem statement into a solution and that will be only steps

-> That's what we call it as algorithms and then we convert that algorithm into code now when I give you an example let's say if you want to if you want to find a given number is all or even I know in your brain somewhere doesn't acquire them

-> What you do is you convert that into a code right but if we talk about big problem statements so first you have to convert that into algorithms and you need practice for that and so for practicing that you have to solve some existing algorithms

-> You know if you open any algorithm book you have this searching and sorting techniques so you have to look for those things first so practice those algorithms and also data structures like we have linked list we have leased right

-> So practice all those things like we have trees so practice all those things together because so there are some algorithms which works with this this data structures so that will be a first step


SECOND STEP

-> When you learn a language and when you implement that in your own way so if I give a problem statement you will write your own code but sometimes the code which you write is not the correct way

-> Not saying it will not give you the right output but sometime what also important is the way you write a code the the compactness of your code the efficiency the speed efficiency

-> Is also a way of any code you heard about design patterns right now to improve those things what I would recommend is just see some other people's code and nowadays we have this huge repository called as github

-> In fact not just github we have different de filmed websites available as well but github is my favorite so what you can do is try to read other people's code because it might give you a new way of writing code

-> The same thing which you are writing but a different way like the syntax will remain same the the output will remain same but the way right up code will change

-> So what you will do is just go to github and as there are some places available just have a look on those things and the way them the moment you watch those could have you when you see those codes it will make an impact on your brain and next time you have code it will be helpful


THIRD STEP

-> The way I have improved my programming skills is by participating in the competition so when I was in my college I used to participate in multiple colleges or multiple college events

-> So may be coding event or debugging event or maybe aqueous events so initially I used to lose all those games but then later on I started winning

-> I was practicing it so initially of course you will lose because you don't know how to compete and later on the mall the more you compete the more

-> How exactly the cool now nowadays if you don't want to visit any qualities you can do it online so we have this thing called as company do programming's so if you can compete with people you know on different websites like hacker ranked hike on earth

-> We have code chef so just compete with people because they will so what happens is this website they will give you a problem statement and you have to convert that wrong statement in to a solution so of course have to write of cool

-> When normally when you submit your code maybe they will not accept it they will reject your code and that's where the lightning starts because initially you will get rejected

-> I got rejected multiple times and later on luckily one of my quad code selected that's without that what motivates you right so you have to participate in competitions

-> Because it will teach you how to code second it will teach you how to code efficiently and third it will teach you how to debug and that's very important in fact in the description area

-> You will find a link to an article and it will be helpful for you so just with the article it will help you to participate in computer programming


FOURTH STEP

-> It might sound weird but don't stick to one language explore try to explore more languages the thing is will we all we all love some languages

-> For example I love Java there are people who love Python then we'll have some people love PHP don't stick to one language because your language might be best but all the languages

-> They have some good things and some bad things or some shortcomings so when you learn another another language it will teach you a different way of idea code

-> For example when I learn Scala I learned about how do we you how do we do functional programming which helped me in my java language right so learn other languages because they have some extra features which you can implement in your language


FIFTH STEP

-> Why you learn a programming language at the end you want to build project so why not start building a project from start I'm not saying from day one but after learning a programming language

-> We have syntax and then implementing all these steps it's time to take time for you to build a project now it can be any project doesn't matter

-> Because we all have some passion right something else like some hobby may be you like to watch movie may be you like to read a book maybe I like playing games or maybe your photographer

-> What you can do is you can build a project for yourself so the first project should be for yourself example if you love music make a music player if you if you like games make your own game

-> Then that will be your first step because when you are doing for something for yourself you will feel good about it right and of course you will get stuck somewhere

-> Because this is your first project and there's multiple way you can solve this just go to Google and serve and but such for your problem and trust me Google knows everything right

-> We also have set for this type of flaw it will help you with the code ok don't just copy paste the code because that's what most people do try to understand the code

-> What they are saying try it out and try to customize it the way you want now don't just copy-paste it because it might lead to bugs and trust me bugs are harmful


Now after these five steps let me just repeat those steps :-

-> First one is practice algorithms and data structures
-> Second one is read other people's code
-> Third one is community programming
-> Fourth one is explore other languages
-> Fifth one is build a project now

With this I have a bonus step for you which is quite important because at least for me and that is keep following telescope it will surely help you to improve your programming skills.

What is MVC (Model View Controller)

Dinesh Wadhwani

What is MVC (Model View Controller) 

-> This is not a new concept first of all and it is a thing that you see in your daily life as well I'll prove that in example just in a moment and also this is not specific to one programming language

-> It is a way of how you organize your code it is not like a specific thing for Ruby or PHP or for Java or for Swift it's just a way of how you organize your code and trust me you also see this kind of pattern every single day in your life

-> I can do a little bit better job in explaining what model-view-controller so yes you have seen model-view-controller probably a hundreds of time in your day-to-day life now

-> Let me try to explain what the model-view-controller is and where you see in your daily life so let's just see that this is you now you go to a restaurant and let's just assume this white entire animation kind of thing is a restaurant

-> You move on to a restaurant now what you do at a restaurant you don't just go to the kitchen and make a food by yourself you can do that at your home so what you wait you just go there and you wait for a waiter to come on now waiter comes to you

-> You just order the food to the waiter now waiter is not aware who you are or what you want to have it just gets that from you now whenever you sell the waiter that yes I want this the waiter just gets the order

-> Now waiter moves to the kitchen now in the kitchen waiter is not going to prepare your food, the food is prepared by the cook so let's bring up the cook now waiter will tell that the cook hey this is a guy out there

-> He wants this kind of food and now cook is the guy we're going to prepare the food for you but cook did not prepare the food magically he needs some ingredients to cook the food he'll open up the fridge

-> We'll put out something legitly you order an omelet so he'll get the egg sugar and whatever it needs so let's bring our fridge as well so now the fridge is there and cook will cook the food now cook

-> Will finally hand over the food to the waiter and probably the cook might hand over a couple of other foods as well like maybe a glass of soda or maybe my favorite icy or omelette that you have ordered now it's the job of the waiter to move those food outside the kitchen now waiter is actually aware

-> What kind of foods need to be served to you and how it should be served so waiters comes back to you and order and your order is now served so you might be wondering hey what this tool is all about and probably you might have anything guess that

-> This is all of your model-view-controller so this you guys is actually have you this waiter guy is actually the controller and yes you get that right this hood guy is model in itself and if you haven't guessed that yes the fridge guy is actually the data

-> So how about that this is a cool example and this is kind of a thing you see every day you have been going to restaurant every day and they are following a model-view-controller objectives throughout the year

-> So this is basically your model-view-controller now I can understand you have gone through with that restaurant example pretty easily and nicely now you want to understand how this is applied in the code

-> Now first of all a lot of people believe that model-view-controller is a thing for only dotnet or may be only for Ruby or may be hungry for PHP but it's not it's the design pattern it's the way how you arrange your code

-> It's going to be possible in everywhere you might want to write an application and PHP Swift java.net Ruby Python you can just arrange your code like that now the whole advantage of this approach is you can write dumb code

-> The more the code is going to be dumb it's going to be more beneficial what I mean by that now all I'm trying to say is we are trying to reduce the dependency of each code in this file from each other

-> We want that if some data is being passed on this file it just process this data it shouldn't be worried about from where this data is coming up ROM or there shouldn't be any dependencies

-> Wherever I does that I always recommend to use the model-view-controller approach but let me give you also an example that this kind of approach although is good in most places but in some places it can be opposite of that

-> Like for example if there is a store which just sells the popsicles or ice creams it would be really bad approach if we use model-view-controller there because there is just one job to do just bring up the ice cream from the fridge and serve it that's it if you use it if you will use the model-view-controller approach there

-> It would be overused and overkill of the resources so at some point of that time model-view-controller is not a good approach but in most of the cases where application is pretty humongous pretty big then it's a good idea to use the model-view-controller approach

-> Now although we are not going into the in depth of what this model what is view what is controller because if I will be taking an example specifically for Android it would be really not a good thing for iOS if I will be taking an example directly from iOS it would not be a good approach for Android

-> So all I'm doing here is trying to generalize the thing as much as possible now one thing I would like to mention that a lot of people misunderstood the thing that your model is not the data again

-> I repeat your model is not the data the data is completely separate it needs to be cooked up so that is what the cook is doing in our example

-> In the real life example your data would be something fetching up from an API request or maybe from the firebase or wherever you guys fetching your data and your models should be the guy who should cook up these data should process the data

-> Finally controller should be responsible from taking the data filtering the request and let us say you have asked for a result of maybe top 10 wonders of the world

-> There can be hundreds of such wonders of the world now you are looking only for the ancient wonder of the world so it's the job of controller to filter out the data and just produce that on to the view.

Zoom Interview Tips Strategies Online Interviews And Calls

Dinesh Wadhwani


Zoom Interview Tips Strategies Online Interviews And Calls

-> I gonna do the problem is not with the online interview the problem is with the way your interviewing and the way that technology is actually getting in your way instead of helping facilitate

-> The success of your online interview so in this blog I'm going to give you two strategies that's going to help you leverage technology and use it to your advantage in an online interview

-> Just making these two simple things is going to change the way you interview online

-> This is valid across multiple platforms Adobe Connect Skype zoom WebEx all those things so as
we know online interviews are becoming more more popular they're a dime a dozen chances are you've probably already had an online interview so many of you may be saying right now yeah well I just interview so much better in person well let me be real with you many employers are going to reach out with a video call to get to know you it's so much more convenient

-> They don't want to waste their time they don't want to waste your time so instead of calling you in to come into the office having you sit down 

-> Do an interview why not just hop on a video call at least in the very beginning you'll probably be getting an online interview

-> So I'm going to teach you two ways to feel more comfortable and confident in an online interview so that you can be presenting the way you want to present and answering the questions

-> The way you want to be answering them and by the end of it you're really gonna feel like you can connect with the hiring manager the person who is interviewing you

-> You're probably gonna even want to have online interviews because it's so convenient and you're gonna see why you're gonna want it

-> Make eye contact or maybe it's more appropriate if we say camera contact and you'll see what so as you know an interpersonal communication it is imperative that we make eye contact same with public speaking

-> We need to be able to look the audience members in the eye share our thoughts with them because it's a way of connecting with the audience so why wouldn't the same be true in an online interview scenario

-> It is how do you make eye contact with the other person on the other side of the screen without them actually being in front of you by looking into the camera so you're looking into the camera as you respond because that translates into making eye contact with the person

-> The person on the other end of the screen will notice that you're actually looking them in the eye it doesn't even feel like an online call it really does feel like an in-person situation

-> Just as simple as looking into the camera now you want to avoid staring at the camera the whole time obviously that would make the person uncomfortable so instead you can you know add a little bit of eye movement but you don't want to do too much of it because that can be distracting

-> You certainly want to avoid looking up or down if that's just too obvious my recommendation would be to look at the screen at that point and they're not going to think anything strange of it

-> Because when you look down you avert your gaze from the camera you're actually looking at the image of them on the screen so that's not going to seem strange to them

-> You should be looking is at the camera to make eye contact and then looking down into the screen to halt look at the image of you right

-> If you want to check your hair or makeup or shirt and whatever do that before you get on the call right so if you're not able to avert your gaze from your own image on the screen

-> I would put a post-it so that you're not tempted to look because we want to minimize distractions on the screen so that the only place you can actually have access to is the camera so that you make eye contact

-> Why does this work it shows you have a secure handle on the interview and it also makes the person feel good because it shows that you're paying attention and that you're listening to what they have to say and everybody likes to feel listened to right it's really important to look in the camera

-> When you do you're tell me about yourself when you do tell me about your weaknesses when you're talking about how you would add value to the company

-> What your role would look like sharing an anecdote these are the parts of the interview where we really want to make sure that we're connecting with the hiring manager

-> Now when they ask you a question or when you need some thinking time it is okay to look down direct your gaze moreso to the screen in other words so to some of strategy one you're making a point of looking into the camera

-> So that you can essentially be making eye contact with the hiring manager it shows confidence it shows that you're poised and it shows that you have everything under control

-> Because you do even when it doesn't feel like it you can really project that impression onto them by doing something as simple as maintaining eye contact and maintaining eye contact will really give them the impression

-> She is really confident he is really confident so we all know that interviews can be over stressful and for some people

-> It's even more stressful when they feel like they can't connect with the personwho's interviewing them because it's not done in person right in an online interview situation but I'm telling you that you don't have to worry so we looked at the first strategy of making eye contact

-> Now we are looking at the second strategy which is having a safety net so you may be thinking okay so what's my safety net how in the world am

-> I going to feel even more secure about this whole thing well you're gonna have a minimized outline now it's really important and I really stress this and underline it and highlight you really have to make sure that you're not over stuffing your outline an outline is probably a generous term for it

-> What you really want is to have a few talking points you don't know what you're gonna get ahead of time in terms of the questions but you have some sense as to what you'll be speaking about so those are your talking points

-> That is what you want in your outline outline okay so make sure that it's not more than five words because then you're gonna fall into the trap of reading off the screen and that is super obvious right reading eyes

-> You see it sometimes in newscasters when they're reading the teleprompter you want to avoid that because it is really obvious 

Sunday, 2 August 2020

Top 10 Interview Tips To Crack Your Interview

Dinesh Wadhwani


Top 10 Interview Tips To Crack Your Interview

We're going over ten tips to crack an interview please note I am NOT going to justify be on time with a tip if you're that much of a moron to be late you don't deserve the job

FIRST STEP  
-> Conduct research prior to going to the interview I'm not talking about knowing what the company does you probably did that prior to actually applying I'm talking getting granular get more into it dive into Google dive into their website figure out this company so that when you go in you're ready to talk shop and if you know who you're actually going to be interviewing with in terms of like the person's name do research on them

SECOND STEP 
-> You're not always going to know but a lot of times they're going to tell you you're going to be meeting with X he is or she is whatever all right do research on them LinkedIn is a beautiful thing and it's an amazing resource to get pretty a lot of info on a lot of people have the information in the back of your head all right and if you can use any of it in the general flow of conversation do it but don't go in there man like so your husband Rick looks fantastic after the nose job and Jack and Jamie are two boys my god you will look like a super stalker and this is counter productive to actually getting a job

THIRD STEP
-> Review the one hundred and fifty most common interview questions that get asked pretty much in every interview think about your answer alright you don't need to memorize the questions but it's a good idea to have an idea of what they're gonna ask and how you're going to respond because if they shock you with why are you looking for a new job and you are dumbfounded like that whole sexual harassment thing kind of killed Nana who I feel the butterflies they're coming because you're getting close the day has arrived it's time to go to the interview

FOURTH STEP
-> All about making friends when you walk into the establishment I need you to be super charming to everybody the receptionist anybody who's walking through that office even other people if they're there actually for the same job you are you're talking you're engaging you're asking questions you're smiling you're being friendly because you never know who you're talking to and you never know if the receptionist has the ear of the person that's actually hiring you right you're in the room and the interview is under way you need to make sure that you remember

FIFTH STEP
-> Keep your answers short but concise not like one word of two words but elaborate as much as you need to to get your point across don't ramble because rambling will lead you down areas that you don't need to go keep it concise keep it consistent

SIXTH STEP
-> Utilizing body language in order to make a great impression this involves eye contact the way you sit your posture the way you stand the way you walk into a room gentlemen I have done a ton of videos talking about all of those things they're also listed in length in the description

SEVENTH STEP
-> About preparation I would recommend bringing some type of nice portfolio to keep your resume business cards and a notebook and in this notebook or on the sheet of paper you're going to have already written out some predetermined questions that you're going to be prepared to ask the interviewer which is actually

EIGHTH STEP
-> Have a list of questions that you're going to ask in most interviews the interviewer is going to ask you at some point hey what questions you have for me and if you're like none all right it means that you really haven't thought about things alright by having a list of questions that you're prepared to ask shows that you're detail-oriented and you're interested in that job

NINTH STEP
-> Selling yourself this is your opportunity to shine this is not an opportunity to be super modest but you have to delicate in the sense that you don't want to look like you're bragging yeah it was the best of that oh yeah nobody can touch me but you can be confident and deliver yourself in a positive proactive way and not look like an arrogant ass all right but it is not the time to be like well I'm not that great now Oh Jack take the Alpha M approach to self marketing promote promote promote at least that's what I do and

TENTH STEP
-> Before you walk out of that office you let them know that you are the man for the job and that you're interested in the job that you want the job let them know that you're excited and hope to be a part of what they have going on or that specific organization before you leave you get up you put your hand out and you shake that hand like a man even if you're shaking a woman I don't be all like oh right you don't need to kiss it you need to shake it.

Saturday, 1 August 2020

Introduction To Test Driven Development (TDD)

Dinesh Wadhwani



WHAT IS TDD :-

1. Test driven development (TDD) is developed which specifies and validates what the code will do

2. Test cases are created before code is written

3. The purpose of TDD is to make the code clearer, simple and bug free

4. TDD starts with designing and developing tests cases for every small functionality of an application

5. TDD instructs developers to write new code only if the test case of particular feature getting failed



6. There is a cycle which TDD follows :-

-> Write a test
-> Make it run
-> Change the code to make it right OR we can say to refactor the code
-> Repeat this process

7. Test-Driven Development as three steps :-

-> Red
-> Green
-> Refactor

8. So you don't have a piece of code, so first thing you would write is the first test condition for that particular thing

9. Let's I have a method which I have to write and I would probably identify the conditions which have to write and probably identify one of the conditions and write the test for it

10. So that's Red so because if you run that test the code would fail the test

11.  Green is when you write the piece of code that is needed to make the test pass

12. So I had a failing test and now I write the code to make the test pass that's green so that's the step green

13. The last step is actually refactored where I need to make the code adhere to four principles of simple design if you don't know what four principles of simple design. So the third step is actually making the code better

14. One of the things about making the code better is to make it a date before principle of simple design at least and most important thing also is to keep it green that's basically it should just should always be passing while you refactor the code

15. Most important is refactor stage you can refactor both the test and the code so even the test is a piece of code which you are going to maintain over a period of time and it should be clear enough so you would go ahead and refactor the test as well and the code as well

16. So that's basically what tests reown development is all about there are three more logical to stay in development that's basically to say like how much code that you can write to make a test fail


LAWS OF TDD

So that's a four laws of test-driven development :-

-> The first law is no production code without failing this so if you don't see a red bar then you are not going to code so that's basically what it means if you write new piece of code only when you see the red bar so only when there is a failing test you write new code and when you add a new test it should be a small test you should not write probably five six conditions of this at the same time what the way it should be is you add a small piece of test probably one small condition

-> The next step you write just enough code to tear at make the test pass so as soon as you write the test you'd write the code which is needed to make that test passes you write a small test

-> Write the small piece of code to make it pass and you follow this in a cycle

-> So these are the three laws of TDD actually like I can act in a fourth law it says all these three steps like the three steps of TDD which is red green refactor usually you should be able to run within two minutes


CONCLUSION

1. In two minutes I should be able to do the three things that basically add a failing test right go to make it pass and then refactor

2. So regarding TDD there are few important things that you need to keep in mind. Make the right choice actually test-driven development is proven to be a success and it leads to maintainable code understandable code and it's known to improve your productivity the productivity improvement is more like after you get a little experience with testing and development.