1. Lack of Fundamental Knowledge
-
They struggle with basic concepts (e.g., data structures, algorithms, OOP, SQL).
-
Can’t explain what their code does in simple terms.
-
Rely too heavily on frameworks or copy-pasting without understanding.
2. Overuse of Buzzwords
-
They throw around tech jargon but can’t explain it in context.
-
Example: Saying “microservices, Kubernetes, AI, blockchain” but failing to describe when or why to use them.
3. Dependency on Google/ChatGPT/StackOverflow
-
Every small task requires searching or asking for help.
-
They cannot solve even moderately new problems without external code.
4. Inability to Debug
-
A good developer can track down errors logically.
-
A fraud developer will panic, keep guessing, or blame tools/others.
5. Shiny Portfolio but No Depth
-
They show many “projects” but can’t explain design choices, trade-offs, or real challenges.
-
Projects look copied from tutorials or GitHub without customization.
6. Code Quality Issues
-
Messy, inconsistent, or duplicated code.
-
No understanding of best practices (naming, testing, version control).
-
Code doesn’t scale or breaks easily.
7. Communication Red Flags
-
Avoids detailed discussions about implementation.
-
Gives vague or generic answers like: “That’s easy, I’ll handle it” but struggles when asked specifics.
-
Defensive when questioned about their work.
8. Resume/Experience Mismatch
-
Claims many years of experience, but struggles with interview tasks.
-
Certifications without actual applied skills.
-
Can’t explain past work or role clearly.
✅ How to Test Them
-
Ask them to explain their own code in plain English.
-
Give them a small coding task (not just copying from the internet).
-
Ask scenario-based questions: “What would you do if the server is slow?”
-
Look for problem-solving process, not just answers.