Careers

15 slang terms you need to know if you want to become a software engineer

A laptop and a speech bubble
iStock; Rebecca Zisser/BI
Read in app

Software engineering has its own slang terms only heard in the industry. Business Insider polled three IT experts with computer and software engineering experience and/or education who collectively bring two decades of industry experience for a list of phrases newbies should familiarize themselves with before they join the industry.

Burak Özdemir, a software engineer with a bachelor's degree in computer engineering and a master's in informatics, has navigated plenty of tech lingo during his seven years in the industry.

"In our field, we use a vibrant mix of industry-specific terms and slang," Özdemir, the founder of the Character Calculator, told Business Insider. "These terms often capture complex concepts, tools, or experiences in a concise and sometimes amusing manner."

Özdemir said that for anyone aspiring to become a software engineer, knowing key terms and buzzwords not only helps in understanding conversations and documentation but also signifies you're part of the tribe, comfortable with its culture, and more likely to fit in:

1. Rubber ducking

Özdemir describes rubber ducking as "a surprisingly useful problem-solving method where you explain your code line by line to a rubber duck (or any inanimate object)."

He said this act of vocalization helps uncover flaws in logic that weren't apparent while working silently.

2. Bikeshedding, aka The Law of Triviality

"This refers to the phenomenon where disproportionate attention is given to trivial issues in software development, while more complex or crucial issues are overlooked," Özdemir said.

"It comes from the idea that people will debate the color of a bike shed while ignoring the design of the nuclear power plant it's meant to house."

3. Boilerplate

Boilerplate refers to sections of code that have to be included in many places with little or no alteration. "It's often seen as a necessary evil and a potential place for future optimization," Özdemir said.

4. Spaghetti code

Özdemir described spaghetti code as a disparaging term for software with a complex and tangled control structure — especially one using many GOTO statements, exceptions, threads, or other unstructured branching constructs. "It's a nightmare to read, debug, and maintain," he said.

5. Easter egg

An Easter egg in software engineering refers to a hidden feature or novelty the programmers have put in their software.

6. Refactoring

The process of rewriting existing code to improve its readability, structure, or performance without changing its behavior is known as refactoring.

"It's like tidying up your room," Özdemir said. "It doesn't make it any bigger, but it does make it easier to navigate."


Komal Fatima has a BS in computer software engineering and a master's in computer software technology. She currently works at Gaper, which hires remote software engineers, as a senior SEO manager. Although she is fairly new to the tech industry, with three years under her belt, she's had a crash course in the lingo.

Fatima's list includes rubber duck and bikeshedding as well, and she added these three industry slang terms and definitions:

7. Code smell

Code smell is poorly written or structured code that may contain bugs or inefficiencies.

8. Yak shaving

Getting sidetracked by unrelated tasks before addressing the original problem is also known as yak shaving.

9. Legacy code

Older, often outdated, software that requires maintenance and lacks proper documentation is called legacy code.


"There are so many slang terms which are specific to the software industry, I think it's impossible to exhaustively list them all," said Abhinav Upadhya, a seasoned engineer with expertise in robotics and automation who has a decade of industry experience and is currently a senior engineer at L&T Technology Services Limited.

Upadhyay founded the podcast search engine DrPawd and writes about programming in the newsletter Confessions of a Code Addict.

His list of terms for software industry newbies includes:

10. Duck typing

Also called dynamically typed languages, duck typing refers to a class of programming languages that don't have strict typing. "Basically, this means that if an object behaves like a duck, then it is probably a duck, but the language will not ensure or enforce that it is actually a duck," Upadhyay said.

"Such loose requirements make it easier to churn out code, however, at the cost of potential bugs and code readability." He added that many companies use these languages, such as Python, Ruby, and JavaScript, to name a few.

11. Bare metal

Bare metal, according to Upadhyay, usually refers to running the code directly on the hardware without using any virtualization or abstraction layers between the code and the hardware.

"It's commonly used in the embedded systems world, and if you decide to work in that domain, you should know this," he said.

12. RTFM

RTFM stands for "Read the Fucking Manual." "This is an old acronym, and you'll hear old-timers using this to point newcomers toward reading the documentation before asking questions," Upadhyay said.

13. KISS

Software engineers use another common acronym — KISS, for "Keep it Simple, Stupid" — as a guiding principle when designing code.

"The idea is that the design should be kept as simple as possible and delay introducing complexity as late as possible," Upadhyay said.

14. Magic numbers

People often need to use hard-coded numbers as parameters in their code — Upadhyay said software engineers refer to these as magic numbers.

"They usually use trial and error or guessing to arrive at good values for these numbers," he said. "However, they don't have a good explanation for why those work. Such hard-coded numbers in the code are usually called magic numbers because they work like magic as no one understands how they work."

He added that you may read the phrase magic number in industry textbooks or documentation and hear it used by other engineers.

15. Zero-day

The term zero-day refers to a security vulnerability that's unknown to the software vendor or developer.

"It's called zero-day because it's being actively exploited in the wild by the attackers before the developers have had zero days to fix it," Upadhyay said. "If working in the computer security area, this is a must-know term."

Read next

robin Madell headshot
Robin Madell
Robin Madell has spent over two decades as a corporate writer and communications consultant in New York and San Francisco, serving as a copywriter, ghostwriter, and speechwriter for executives, entrepreneurs, and thought leaders across diverse industries, with a focus on productivity, work-life balance, stress management, and women's leadership. As a business journalist, Robin contributes to Business Insider's Strategy section, and her work has also been published in Harvard Business Review, Fortune, Forbes, US News & World Report, and many other business publications. Robin is the author of "Surviving Your Thirties: Americans Talk About Life After 30" and has contributed to many business books including "Ditch Your Inner Critic at Work: Evidence-Based Strategies to Thrive in Your Career," "Rise to the Top: How Women Leverage Their Professional Persona to Earn More," and "Be Your Own Mentor: Strategies from Top Women on the Secrets of Success," published by Random House. Before starting her own business as a corporate writer, Robin held executive positions in communications, journalism, and advertising, including as vice president and managing director at Draftfcb in New York, as managing editor at Cline Davis & Mann, and as director of communications at Catalyst, Inc., on Wall Street; she has also served on the Board of Directors of the Healthcare Businesswomen's Association in New York and San Francisco. An avid runner and two-time Boston Marathon qualifier, Robin graduated summa cum laude and Phi Beta Kappa with honors from University of Oregon, a.k.a. TrackTown USA, where she majored in English — visit her on her website.