Software Engineering Interview Questions
Software Engineering is the study and application of engineering to the design, development, and maintenance of software.
The field is one of the youngest of engineering, having been started in the early 1940's and the term itself not used until 1968.
Knowledge of computer programming is a pre-requisite to becoming a software engineer.
Software engineers apply the principles of engineering to the design, development, maintenance, testing, and evaluation of the software and systems that make computers or anything containing software work.
DEFINITIONS OF SOFTWARE ENGINEERING
the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software
an engineering discipline that is concerned with all aspects of software production
the establishment and use of sound engineering principles in order to economically obtain software that is reliable and works efficiently on real machines
SOFTWARE ENGINEERING INTERVIEW QUESTIONS
1. What is software engineering?
2. Which tools do you like to use for keeping track of requirements?
3. What is the difference between re-engineering and reverse engineering?
4. What is the role of interfaces in design?
5. Define testing?
6. What is white box testing?
7. What is Black box testing?
8. What is the difference between white box, black box, and gray box testing?
9. Define cyclomatic complexity?
10. What are case tools?
11. What is software requirements definition?
12. What are user requirements?
13. What is tracebility matrix?
14. Mention the various types of maintenance?
15. What is the difference between software engineering and system engineering?
16. Differentiate between a.) Testing and Debugging b.) Two tier and Three tier architecture c.) Alpha testing and Beta testing d.) Static testing and dynamic testing
17. What is SDLC?
18. What is error tracking?
19. What are the advantages and disadvantages of white box testing?
20. What are the different types of black box testing?
21. What are the different types of white box testing?
22. What is meant by smoke testing?
23. What is alpha and beta tests?
24. What are the SCM activities?
25. How do you make sure that your code can handle different kinds of error situations?
26. What is meant by system testing?
27. Mention the categories of debugging approaches?
28. What is adaptive maintenance?
29. Define cohesion and coupling?
30. What are the different types of cohesion?
31. What are the different types of coupling?
32. What is configuration management?
33. What is the difference between a defect and a failure?
34. What are different types of verifications?
35. What is meant by specification?
36. How spiral model works?
37. Which test cases are written first: white boxes or black boxes?
38. Explain Unit Testing, Integration Tests, System Testing and Acceptance Testing?
39. Can you explain requirement traceability and its importance?
40. What is the difference between verification and validation?
41. What's the difference between alpha and beta testing?
42. How does testing affect risk?
43. What is coverage and what are the different types of coverage techniques?
44. What's the difference between System testing and Acceptance testing?
45. Can you explain regression testing and confirmation testing?
46. What is a software process?
47. Can you explain process areas in CMMI?
48. Does automation replace manual testing?
49. Can you explain boundary value analysis?
50. Can you explain equivalence partitioning?
51. Can you explain decision tables?
52. What is CMMI and what's the advantage of implementing it in an organization?
53. What are the different Ways of doing Black Box testing?
54. What is meant by measures and metrics?
55. Can you explain function points?
56. Can you explain steps in function points?
57. Can you explain how the number of defects is measured?
58. What are the categories of software?
59. Do you know what a regression test is? How do you verify that new changes have not broken existing features?
60. What is the difference between a test suite, a test case and a test plan? How would you organize testing?
61. What do low coupling and high cohesion mean? What does the principle of encapsulation mean?
above are the interview questions that had been asked most of the time in reputed companies over two to three years, so prepare it if you are thinking of giving interviews for the companies providing jobs with a profile of testing(automation and manual).
The Software Engineering Institute offers certifications on specific topics like Security, Process improvement and Software architecture. Apple, IBM, Microsoft and other companies also sponsor their own certification examinations. Many IT certification programs are oriented toward specific technologies, and managed by the vendors of these technologies.
For practitioners who wish to become proficient and recognized as professional software engineers, the IEEE offers two certifications that extend knowledge above level achieved by an academic degree: Certified Software Development Associate and Certified Software Development Professional.