Meaning of the construction ～て〇〇年／〇〇か月になります


I saw the construction

> ～て〇〇年／〇〇か月になります

and it looks strange to me. Here is my question: does this construction mean
that the action continues until now?

For example:

> この 会社に 入って １０ 年に なります。

My teacher said that this sentence means:

> I started working 10 years ago, and have worked until now.

Is this correct?




～て○年/か月 refers to either "the continuation of the result of a past action" or
"a habitual action".

"A社に入って5年です" usually means you are still working at A社 (continuation of the
result of 入る). This is different from plain past "5年前にA社に入りました", which implies
nothing about your current situation. In English, the former is like "It has
been 5 years since X happened" and the latter is like "X happened 5 years
ago." Similar examples include:

>   * この町で暮らし始めて半年です。  
>  (implies you are still living in this town)
>   * 彼が亡くなって、今日で2年になります。
>

In addition, the same construction can express a habitual action that has been
repeated for some time ("to have been ～ing for ～").

>   * 毎日サッカーの練習をして2年になる。
>   * スライム倒して300年、知らないうちにレベルMAXになってました (title of [this
> novel](https://en.wikipedia.org/wiki/I%27ve_Been_Killing_Slimes_for_300_Years_and_Maxed_Out_My_Level))
>




～て○年/か月 refers to either "the continuation of the result of a past action" or
"a habitual action".

"A社に入って5年です" usually means you are still working at A社 (continuation of the
result of 入る). This is different from plain past "5年前にA社に入りました", which implies
nothing about your current situation. In English, the former is like "It has
been 5 years since X happened" and the latter is like "X happened 5 years
ago." Similar examples include:

>   * この町で暮らし始めて半年です。  
>  (implies you are still living in this town)
>   * 彼が亡くなって、今日で2年になります。
>

In addition, the same construction can express a habitual action that has been
repeated for some time ("to have been ～ing for ～").

>   * 毎日サッカーの練習をして2年になる。
>   * スライム倒して300年、知らないうちにレベルMAXになってました (title of [this
> novel](https://en.wikipedia.org/wiki/I%27ve_Been_Killing_Slimes_for_300_Years_and_Maxed_Out_My_Level))
>

