As a student, I am interested to hear some advice from experienced developers about some of these topics:
I believe that the most important thing that served me back then was:
Not being afraid to ask: there's always more thing that we don't know than things that we know. And it's especially true when you start (but it always remains true). So go ahead, think about the solutions you might develop, and ask for a review even before starting coding it, have a discussion with a more experienced dev to challenge your thoughts, and his/her answers will help you a lot learning new things and understanding what you might have missed or overlooked (it's normal, expected and OK)
In other words: a mistake you should avoid is being afraid not to ask for help, trying to be perfect.
Keep in mind that there's every day more new things that come out and you don't already know, than things you learnt during the day. Consequences: never stop learning, never stop at least reading updates to have an idea of what's going on and what you might consider digging for future projects. IMHO being aware of his own ignorance, and trying to have an idea of what's going on is the most important things to have a chance to stay up-to-date.
That's high-level ideas, but I think it was true 15 years ago, it's still true today and chances are it will remain true in 10 years from now. (But, since I do ignore a ton of things myself, I also might be totally wrong ;-)
@JanVladimirMostert covered most of the things, but I would like to add a few more points. Here is my opinion :
Usually, the first job offers a lot of learning opportunities and you should leverage this. Learn from your seniors and take feedback positively.
You know what everybody likes in a developer? The answer is "Coachability". Senior developers, architects, managers etc aren't always jerks. You should try to learn as much as possible from them and listen to what they are saying. You will become a great developer if you take feedback in the right spirit and fix your weaknesses.
There are more.. but these are the important ones I can think of now.
You should keep learning. This is how you will stay relevant in work industry.
In my previous job, one of the architects told me that frameworks/ technologies come and go... You should not pick a technology just because all the cool kids are using it. May be their use case is different. The proof is always in the code. Use multiple technologies, evaluate them and make an informed decision. As Jan said, have passion and get things done. You will be hired because of your passion and smartness, not because you know technology X.
As you can see in the very good replies you already received, it's not about tech. It is about the soft skills: Communication, friendliness, passion, clear writing, understandable speech, coachability, your ability to connect with other human beings.
Expect your first job to teach you more clearly what it is you do want, and what you dislike. Take action on it. Job after job if so is required on your journey to where you want to be. Make sure you never drag yourself out of bed to get to work. Nor to school. Find your passion, tune into it everyday and strive to live life to your full potential. Like a profession, this isn't something learnt overnight. Welcome aboard.
Your biggest mistakes could be to think it's about tech or about being right. Or that your journey never changes.
A great developer is both in tech (as so well illustrated by @JanVladimirMostert), and in personality. Help others thrive and you will to. In my opinion a great developer is a great coach, a mentor and a leader of the pack. Who also knows how to code and stays informed. I think passion is the key instrument to getting there.
You can be relevant in so many ways. It might not be about code, or tech, or the industry. Live life and you'll see. I know a lot of people that have a different profession now than what they were taught at school. But you never stop learning. So keep that spirit high, take your enthusiasm everywhere you go and help other people thrive.
Expect to be doing a lot of bug fixes and very little coding at first if you join a large(r) company; smaller one-man / startup type companies, expect to work your ass-off and to be disagreed with a lot, but be open to learn from seniors, they've got the battle scars to back what they are saying and if they are wrong, make sure to address their point with compelling arguments, if not, anything you say in the future will be shot down.
How you handle critique from your mistakes is what makes you a great / average developer, mistakes will always be made. I was working on a project as a newbie with a large team (which later became a multi-billion dollar organisation) and the architect reviewed each line committed and if he did not agree with your commit, he would come running at your desk and shout at you if your commit was not of great quality - so everyone was nervous hitting the enter key after doing
svn commit. After a few weeks of getting verbally abused multiple times, I stood up, look him in the eyes, and asked, "how do I fix it", he shouted, go read the docs, I replied, "which docs?", he shouted, "section _ of __, google it". Sometimes I would get it right, sometimes I went back and asked him to explain it to me and in the process I was learning rapidly directly from the architect and soon people started asking me stuff they were too afraid to ask the architect. So man up and take critique if you're learning from it, if the critique is unfair, find another job, otherwise document what you've done so you don't make the same mistakes again.Everything, start with history, it'll teach you why certain things are done like they are, do as much theory as practical. Spend an hour each day trying to learn new things outside your regular work-day - 7 days a week and 365 days a year - you'll be amazed how quickly you advance simply by putting in an hour every day - over 10 years, that's 3000+ hours you've invested in yourself that other people might not have done and it will show - I average on 3+ hours a day depending on how urgent projects are that I'm working on. Do something using AWS, then try and do it with Google Cloud, build something in Node, then switch and try building another component using Spring and Java, make them communicate, try building UIs without frameworks, then try doing things using different frameworks, try figure out how to build complex data models using NoSQL and then build it using SQL and get a feel for the tradeoffs, etc
Be great at what you do, have passion, then it doesn't matter what tools you know, you'll often get the job without even knowing the language simply because you show commitment to teach yourself what is needed to get the job done and have already demonstrated that you know a very broad spectrum of other solutions.