Advancement in a corporate environment is generally quite simple. Do extra work without getting paid.
You must sow before you can reap.
Ask your manager if there is anything you can do to help.
If an opportunity comes along to do a special assignment, volunteer for it.
Create a document of suggestions for improvement. It is not enough to identify a problem. You must also think through how it could be solved. And always stay positive about problem solving.
Of course you must do your current duties to the best of your ability as well.
You would be surprised, when someone shows initiative and can prove they are earning or saving the company money, positions can be created where they didn’t exist.
I have a friend who went from a warehouse position lifting heavy crates to having a new position created for him becoming the in-house IT expert.
From working 60-80 hours per week, (paid overtime) while constantly looking for improvements to processes, I was promoted within 8 months when an opening became available.
Some companies will have limited new positions becoming available. If this is the case, focus your mental energy on how the company could grow or expand its business possibly into new markets. Make suggestions, but be humble, you may not know the full picture. Management will appreciate your enthusiasm and going above and beyond.
Make sure to document everything you have done. You can bring all your achievements with you for your annual review. Your manager could easily forget things you have done or not had the chance to take notice.
If you are not satisfied with the speed of advancement at this company, you can put all those accomplishments on your resume when you apply for a better opportunity.
But give yourself at least a year of doing 10-20 hours extra per week, paid or not before you switch companies.