I'm sure you've been asked that question before, but how did you reply?
I have frequently heard the expression "I work here since 5 years" which is, unfortunately, not grammatically correct.
To understand why not we need to have a look at some grammar.
I work here - present simple tense
This is used for a statement that is true all or most of the time. So far so good, "I work". However, and this is where the answer falls down, when we add a time element onto the end of this statement we need to change the tense we use. We can no longer use the present simple "I work" but instead need to use the present perfect.
I have worked - present perfect tense
This is used when we want to express an action in the past with a result now.
Looking at this explanation of the present perfect tense, plus the words used in the original question "How long have you worked here?"
We can determine that the answer should be given in the present perfect tense -
I have worked.
Correct answer: I have worked here for 5 years.
The present perfect tense can be used in many other situations:
Q: Have you drunk any coffee today?
A: I haven't drunk coffee for 3 months.
Q: Have you owned your car for a long time?
A: I have owned my car for 3 years.
Q: Have you practiced the piano this week?
A: I have practiced the piano every day this week.
When using the present perfect the structure is:
I have + past participle of the verb
I have worked I haven't worked Have you worked?
I have drunk I haven't drunk Have you drunk?
I have owned I haven't owned Have you owned?
I have practiced I haven't practiced Have you practiced?