-
Notifications
You must be signed in to change notification settings - Fork 5
Placement Guide
by Somil sir Batch 2k17,
A lot of 3rd yrs(Final yrs Now 😜) had doubts regarding the source for studying NETWORKING, OS, OOPS, etc for placements. Apologies for not conducting classes for these topics, as was decided. Lack of time and a need to enjoy our remaining days 😉, became hindrance. Anyways, please make note of the suggestions for each of the above topics- (P.S. This is gonna be a big post, patiently read through the end without confessing 😜)
NETWORKING:Kurose and Ross is the only source I would recommend. It has covered all aspects in sufficient detail and explanation. Do application, transport and network layers in detail and for link layer-cover the access protocols and wifi portion only. Do go through the networking portion of GFG to understand the type of questions that come in interviews. In case you have used any networking concept in your projects for example socket programming- then remember to do that in depth. Sometimes they may ask questions related to how you would implement a module. E.g. I was asked how would you implement ARP module in C(basically the data structures you would use) or questions like design a DHCP service for a company of 5000 employees. So while you read know the basics and also ponder over how that could have been implemented.
OS: William stalling is worth a read. However syllabus of OS is quite vast and confusing. I would rather suggest you to go through the OS section of GFG and if you find any topic that you do not know, then read through that topic in the book. In any case do cover these topics thoroughly- processes and threads, mutexes and virtual memory concept. If you have used any concept in yr project, then do cover up that too-e.g. JAVA multi-threading, user and kernel level threads, etc.
OOPs: this is the most important section that is asked in almost all companies. You must have thorough knowledge in this. There were a lot of doubts regarding whether to do C++ or JAVA or the fact that if you know one lang., should you know the other. As I have always stated, you must know one procedural (C) and atleast one OOP language. If you wish to cover up OOP concepts and don't know any of the language, then you should prefer Java as it is very lucid and completely object oriented. On the other hand, C++ dwindles between C compatibility and object oriented nature. Concepts like abstract classes, interfaces, etc. are not very well defined in C++. Software development is also very convenient in JAVA. However, C++ is very beneficial in competitive coding for its STLs and compact code. So you basic knowledge of this language as well. Also contrary to the common perception, it is not always necessary that you must know C++ before JAVA. In language section of CV, you can always mention the levels e.g. basic, medium or advanced. So my advice would be to go through GFG C++ section and STLs that would allow you to add C++ with BASIC proficiency and for java, you can go through the material of CC Java classes(will compile them soon). Don't forget to keep some standard example in mind for all concepts of OOPs-it helps to remember terms and also in explaining interviewer. Thinking in C++ BY Bruce Enkel is good reference book.
UNIX: Some companies do ask concepts related to Unix commands, signals, fork, pipes, interrupts, etc. Remember to have hands on all the programs and techniques taught in SYSTEM CALLS lab. Practice some fork,exec related questions. If possible go through interview questions related to this and if you find any new concept, cover that up. Sumitabha Das basic and advanced Unix are the books you can go through.
DBMS: Not much is asked from this section if you do not mention it in AOI or haven't done a project related to it. (I would recommend not to mention it until you have a project-questions can be very tricky). Apart from basic questions that you will obviously prepare, there can be schema design based questions and ER diagrams that can often be very tricky under interview pressure. For DBMS-korth will be the best book for reference.
OTHERS: Some concepts like Design patterns or Automata may be asked as per company or your resume or projects. Some companies may be interested in Computer Architecture. Best thing to do is to develop a base in the holidays and then do company related study during placement season. So study only the above topics in holidays and cover up the later during placements. Mentioning Design patterns as AOI can be both dangerous and advantageous. Go through reference material in JAVA cc classes if you wish to get sufficient knowledge.
Please note that your first priority should be data structures and algorithms as it is important for both written and interviews. But do remember to give time to these topics as well as they are required in interviews.
One advice for projects- whatever project you make please know all the related technologies and have answer to the question-How is your application different from the existing similar applications or what is new feature in your application.
This was my last post here as CC coordinator. Teaching you all was an enjoyable and a learning experience for us, as it sure would have been for you all as well. This year, unlike previous years, we made sure that both algorithmic and non-algorithmic sections are taught equally. Our initiative to start JAVA classes was to start a much lacking but industrially important culture of software development and JAVA programming in the college. Personally, for all these years at MNNIT, I have grown great respect for this legacy of seniors selflessly teaching juniors, called CC classes. It is a rare tradition that you won't find in other colleges and one that is so beneficial that most MNNITians attribute their placements to their seniors rather than professors. Seniors here put humongous effort and time in putting up these classes, which one can't fathom until one actually stands on the other side of the class-the teaching side. And believe me you often don't get the kind of response you expect. Nevertheless, it is a legacy that I feel must be continued against all odds and selfish motives. I hope next year would make no less efforts to sustain it. Advice here- please don't refrain from taking any new initiatives- cling to the old but have your eyes to the future too-coz you shall mould the tradition for years to come.It may take extra effort but keep in mind that one ounce of hardwork would mean improvement of culture for hundreds of juniors. We would love if some juniors next year start the networking and os classes that we couldn't conduct or start an open source programming club.. In case you have any doubts, feel free to contact us anytime. We are there for you all always.
|| Best Of Luck ||
- Overall-Guides
- Academic-Guides
- Android-Dev
- Web-Dev
- Open-Source-Dev
- Game-Dev
- Java-Dev
- Python-Dev
- Competitive-Coding
- Some-Random-Tips)
- Overall-Guides
- Academic-Guides
- Android-Dev
- Web-Dev
- Open-Source-Dev
- Game-Dev
- Java-Dev
- Python-Dev
- Competitive-Coding
- Internships