Linux Certification for the Software Professional
Within the Linux community is a growing discussion concerning the need for certification. Although certification may not be appropriate for today's Linux enthusiasts, it will be essential in the future as Linux software is brought into corporate and government environments. Certification programs and open source software will become significant as more and more independent professional programmers integrate Linux and Linux-based software into standard contract programming. Use of the certification process to develop minimal standards that are acceptable to the Linux community will also smooth the coming transition to state board licensure of the Professional Software Engineer.
When comparing diverse professions such as law, civil engineering, accountancy, clinical medicine, clinical psychology, and even hairdressing, one notices they all have a requirement of certification or licensure for the practicing professional. Computer professionals, on the other hand, do not have such a requirement.
The main reason for the lack of required credentials is probably that the computer discipline is only about twenty-five years old and, therefore, it has yet to come of age in industry or academia. As evidence of this field's youthfulness, traditional engineers often dismiss computer science as pseudo-engineering. Programmers stress the art (as opposed to science) of programming and the art of system administration. Computer science degree programs have been placed in university liberal arts, business or engineering schools. Meanwhile, computer scientists themselves cannot agree on even a short list of essential degree requirements for the Bachelor of Science in Computer Science (BSCS).
In spite of this awkwardness and uncertainty, our profession is doing well. BSCS graduates command high initial salaries that match or exceed other engineering disciplines. Computers control much of the country's infrastructure and this control is dramatically demonstrated by the manpower and resources currently employed to address the year 2000 problem.
In other words, the debate over certification in general and Linux certification in particular represents the growing pains of a relatively new profession and society's need to understand what a software engineer does. To make matters worse, the U.S. Department of Labor predicts that the computer industry will have 300,000 more programmer positions than programmers over the next few years and universities will not be able to fill the predicted demand. In fact, overall enrollment in computer science programs has decreased slightly in the last year (see http://stats.bls.gov/oco/ocos110.htm).
The role of certification, therefore, is to provide a method by which employers can specify and expect a given level of computer system expertise from employees without requiring them to have an advanced computer science degree. In a secondary role, certification acts as a supplement to a college or university degree by providing professional development through continuing education.
It is now time for the Linux community to shape the future of the software engineering profession by agreeing upon minimal industry requirements that will be codified into certification and licensure requirements.
A Linux system and its array of development tools and applications represent a central core (or “common body”) of knowledge for today's professional software engineer. Linux “empowers” the software professional with a set of tools that allows one individual to quickly provide sophisticated, flexible and reliable system solutions on a variety of computing platforms. These sophisticated solutions would otherwise require teams of programmers working months to integrate proprietary and incompatible software modules.
Second, a fundamental concern of corporate and government managers is the cost of operations—and Linux dramatically reduces this cost. The reduction is not so much from the idea of free software, but more a result of increased programmer productivity through complete control over the system. Another aspect of reduced cost is that the entire Linux community, including business and government, is continually debugging and improving the program base, making the system even more cost effective with each new distribution.
A third reason for a Linux certificate comes from state licensing boards. Licensing is a governmental action that seeks to safeguard the health, safety, welfare and property of its citizens and businesses through regulation of the offer of services, review of performance and use of the title “Engineer”.
On February 18, 1998, the Texas Board of Professional Engineers stated its intention to recognize software engineering as a legitimate sub-discipline. On June 17, 1998, the Texas Board approved a license for the Professional Software Engineer, and on August 3, 1998, began licensing software engineers through a waiver process (http://www.main.org/peboard/).
Given how Linux is used, this is a significant move by the Texas Board of Professional Engineers. Linux system software allows the independent software professional to provide a competitive bid, program the application and deliver a software product quickly. The professional programmer knows that Linux is a complete and open source software system that will simplify the solution of any development problem. In other words, from embedded systems through advanced networked clusters, Linux has already handled many programming and integration issues. The software developer is free to configure Linux in any way that best suits the required solution. Hence, Linux is an integral part of the software engineering process and as State Board licensure continues to grow, Linux must be a part of the licensing process.
Finally, given the predicted demand for software professionals, a Linux certificate will provide a valuable aid to employers in discovering productive software professionals.
- Machine Learning Everywhere
- Own Your DNS Data
- Bash Shell Script: Building a Better March Madness Bracket
- Understanding OpenStack's Success
- Simple Server Hardening
- Returning Values from Bash Functions
- Understanding Firewalld in Multi-Zone Configurations
- From vs. to + for Microsoft and Linux
- Natalie Rusk's Scratch Coding Cards (No Starch Press)
- Tech Tip: Really Simple HTTP Server with Python