Good! See if you have the below core skills. If not, try to review the basic concepts and prepare for the Interviews.
1. Software Development Life Cycle (SDLC): The SDLC is to understand the core methodology of the software development process. This process is one of the essential concepts for Dev/QA individual and the teams to collaborate effectively in the creation of the software products or IT services.
2. Software Quality Concepts: The quality concepts are the fundamental knowledge on the testing part of SDLC process that must be possessed by every QA and Dev team for the delivery of a high-quality software product.
3. OOPS: The majority of the software products development has been done with Object-oriented languages such as Java, C++, and other OO high-level languages. OOP concept is very much essential for any Java/C++ programmer to maintain or develop new software in Java.
4. XML: Most of the existing dynamic content, e-commerce sites and many software configurations have been done using XML file format. It is essential to understand this universal XML file format to survive in the Software dev and QA profession.
5. XPath: As long XML is there, the XPath also plays a key role in performing the navigation, extraction of XML, and transformation of the content to various other forms (HTML/text). So better to acquire this skill by developers and QA professionals.
6. JSON: The JSON file format is a newly evolving and modern universal file format. JSON format is being used widely in REST WS, Internet/Web applications, Social sites, etc. Having hands-on with JSON files is crucial for all developers and QA automation professionals.
7. SCM/SCCS(SVN/GIT): The source code is one of the major intellectual property of any software organization. It is essential to collaborate with the developing teams using a source code control system such as SVN or GIT. It is important to understand the SCM concepts and working knowledge on SVN and recently popular GIT software for both developers and QA automation engineers.
8. Unix/Linux: In Today’s World, most of the enterprise software, website hosting, and any Internet-hosted software or applications are on the Linux/Unix platform. Having hands-on experience with this platform is fundamental for everyone.
9. Java & JDBC: Most of the existing or new, whether small or larger software projects are still written in Java language. The Java should be at the heart of every software professional and thereby essential to have this language to survive in the software development and QA automation profession.
10. ANT: The ANT is a build framework. Once it was popular and still is being used as Java build framework for both product code and test code in most of bigger software organizations. Having an understanding and hands-on experience for both developers and QA is good.
11. Maven: The Maven is a build framework used everywhere in the recent Java projects. It addresses some of the dependency resolution problems with Java project build process that was a burden with ANT. Maven makes the build process simple by using conventions. Thereby Maven is a significant survival skill for both developers and QA automation engineers.
12. JUnit: The unit testing should be one of core tasks for any Software developer. The JUnit is an old but simple and popular framework for Java projects. This test framework is still being used in many organizations and lot of IDEs support the automatic test code generation and execution. Having JUnit experience is an essential skill for developers.
13. TestNG: The TestNG is one of the common framework used across the unit testing and functional testing. TestNG is being used in most of the recent projects and specifically in Selenium based test projects. Having hands-on with this skill is essential for both developers and QA automation professionals.
14. Jenkins/Hudson (CI): In the Continuous Integration (CI) category, Jenkins/Hudson play a vital role with automated jobs for creating the product builds/bundles and also end-to-end regression test cycles. The Hudon/Jenkins functionality is extendable with plugins, and many of the plugins are already available. It is a widely used tool. Thereby having this skill by both developers and QA engineers gives a real strength.
15. Web Applications Testing – Selenium: The Selenium is a browser-based website testing automation framework. Many of the organizations need this skill to create automated test suites going through the browser. This framework acts as a remote to the browser. The selenium automation hands-on experience is a must for QA automation engineers.
16. Web Services (SOAP&REST API) Testing and SoapUI: The Web Services are loosely coupled and distributed technology that is widely used. The WS are being used in Service Oriented Architecture (using SOAP-based web services), or with the Internet resources addressed as RESTful WS or REST API or REST endpoints. Nowadays, the REST is very popular and is everywhere. It is essential to understand and test these REST APIs. This skill is a must for both developers and QA engineers to survive in the development of current software and IT services.
Hands-on/Getting started: Once joined the job, many times it will be a confusion where and how to get started the day-to-day work. This section helps to understand those basic expectations from your new company/team and walks through the flow.
Java samples code: Learning by an example is a quick way to learn new things. The Java sample code helps developers and QA engineers to get comfortable in Java programming.
Selenium samples code: The Selenium sample code helps QA engineers in learning the browser-based website test automation using Selenium. Having examples is a good way to quickly getting into coding.
Sharing my new book that covers all of the above 16 skills and also as this is helpful for QA & Automation professionals. Product Detailsby Jagadesh Babu Munta (More buying options such as iBookStore/Lulu/eBay can be found at ). Also the paper book is available in India at
There are about 500+ questions and answers in the above 16 skills to ease on understanding the concepts and review purpose.