Step back and think again: How much do you know about languages you are using?

Recently I did many interviews for position of both Jr. and Sr. Developers. Here, I will not talk about the interview itself, rather the lessons I learn from those interviews. First, let’s talk about the context: I am focusing on the technical aspects. And:

  1. I know those  candidates are doing very good job at their current position since they get good paid for their job
  2. I know what people usually put on their CV
  3. I do not want to criticise on anything or any skill they have. And I assume what they write in CV is what they mean.

In candidate’s CV, I usually see these:

  1. C#: Advance, 4-5 years experienced
  2. Java Script: Fluently
  3. Other technologies (frameworks, languages) that are said as: expert or at least many years of experienced

However, when I started to ask some questions about C#, such as Event, Delegate, Parallel, Value Type, Reference Type, Argument passed to method, … I got many bad answers. Some did not know Event and Delegate.

Then I asked myself a big question:

WHY?

Then I started to think: What happen if I step back, honestly ask myself these questions:

What do you really know about C#? How deep you are in the languages you are working it day by day? And what kind of features that C# offered that you use most?

Fact: I have been working with C# for 10 years. I code C# everyday. However, sadly speaking, I have not known the language, the tool that feeds me much. The same answer goes for other tools, languages.

For fun, let summary what I usually do with C#:

  1. Create new class
  2. Define class, member, property, method
  3. Basic types: int, DateTime, string, …
  4. Lately, I coded with asynchronous style, but not much

Most of the things I do with C# are there since C# was created long time ago

OK! That are enough for fact and sad news! What do I learn from all these:

Sharpen your knife

That is: I will focus on learning deeper in the languages I work with, in the frameworks I used. For everything I learn, I will tell myself: Take a close look, a deeper step. Make sure you understand it.

The more I know about them (the tools I used) the more joy I have at work.

So keep learning!

  1. Cat Minh Vo

    I reckon this is the fault of marketing and IT industry in development countries as well. However, in there, they have a chance to solve bigger problem and software was in use to help their business to growth faster. Moreover, sharing knowledge in development community is open in their mind comparing to us, somehow I feel frustrated to our developers.

  2. namkha87

    Well, I think, we, software developers can do daily work just fine without deeper knowledge about program languages. It takes time to gain a truly and deeply understanding even for a simple language like Javascript. It’s not just about reading and watching, but we have to think, brainstorm and ask our self a lot of WHY questions. For me, I think we can only have the courage to do so if we actually enjoy coding, interested in technical stuffs, and like Steve Jobs said “…the only way to do great(not good or fine but great, impressive) work is to love what you do” 🙂

Leave a Reply to namkha87 Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.