Lowly .NET developer (C#, ASP.NET Core, Vue) between Engineer and Senior Engineer (see text below)
Junior Engineer - Creates complex solutions to simple problems.
Engineer - Creates simple solutions to simple problems.
Senior Engineer - Creates simple solutions to complex problems.
Rockstar Engineer - Makes complex problems disappear.
A big difference between new coders and experienced coders is faith: faith that things are going wrong for a logical and discoverable reason, faith that problems are fixable, faith that there is a way to accomplish the goal. The path from “not working” to “working” might not be obvious, but with patience you can usually find it.