As a computer engineering student, I think this is the right place to ask for help about my career. Well I am in my sophomore year at one of the leading university in Turkey. I want to specialize in information security. However, I want to clarify something. "I have been - and always shall be" an average student. My student life has never been so bright but I have enough passion and resources to be an ethical hacker. Sometimes I think what they teach us in the university is waste of time. People can learn coding, operating systems, network, database etc. from the internet. So here is my question: Should I quit my university and stay behind the doors,do what I love, for a long time or waste two more years with the pressure of everything you do or don't will be graded?
You need to understand that a University degree (assuming it is a degree course you are enrolled in) does not attempt to teach you all the skills you need in order to be successful in your chosen career. What it does do is give a good grounding in your chosen area, but more importantly, provide evidence of your ability to apply yourself and achieve a widely recognized level of accreditation. If you are after courses that provide more specific vocational skills, and there are plenty of these in the computer science industry, it may be that you should search for a better suited program. These types of courses are usually shorter and more intensive than a degree course.
Whether your university degree will be useful to you will depend very much on what you intend to do with your career.
If you plan to design and develop your own software systems or products, and then fight to have your products recognized on the global market, and build your reputation from scratch, then a degree may not be much use to you. There are some examples of success stories of people who dropped out of, or never went to, university, so nobody can tell you it can't be done. But I think you will need to be extremely good, and lucky, to be able to do that. You may also need to have a back-up plan in the meantime in order to put food on the table.
However, if you ever plan to work for somebody, or a company that does not know of your reputation and amazing ability, then you will need to somehow demonstrate that. A degree is the first step towards demonstrating to those who are likely to employ you that you have been able to apply yourself in a recognized mainstream course of learning and been able to reach recognized benchmark standards. Once in your job, you will then be expected to learn the specifics of that position, and what better way to show that you are able to learn and apply knowledge than to have a piece of paper from a university to show that you can. It will be a nationally (and in many cases, and importantly not all cases, internationally) recognized accreditation. Once you have embarked on your career, it will be the references from previous employers that will vouch for your ability, and the degree will matter less.
What I would be asking myself as a prospective employer is whether someone who claims to have passion and ability to access resources, but lacks the application and commitment to successfully complete their degree is the right person to employ in my team.
It's always a very personal decision as to whether you're going to stay on with university education. I fear this question may be closed as opinion based, but I'll take a stab at giving some suggestions.
I think there's a number of factors you're going to have to keep in mind when you make these kinds of decisions:
It has to be acknowledged that large swathes of the computer science/engineering skillset can be self-taught or learned through MOOCs, and project contributions. However, one needs to keep in mind their own personality when considering self-learning. Historically I was a terrible autodidact, simply because my personality worked depth-first, which is a terrible way to get started in a new topic. University helped me a lot by forcing me to prune my search trees so I could actually learn the topics at hand!
Universities aren't always just what they teach. Faculty can be important resources for guiding one down productive paths and avoiding getting stuck on solved problems. Mentorship and the possibility for great guidance should be carefully evaluated when considering leaving. If you aren't seeing mentorship and guidance, consider how much of this is the environment, and how much is you. An alternative to dropping out entirely might be to transition into an institution that is better suited to your interests.
Credentials may not mean anything. However, sometimes they can open doors for you that might be closed, or subject to hurdles without the credentials. It's going to be highly specific depending on what kind of work you want to do in what field, but needs to be considered.
Ultimately, you need to know where your desires lie, and plan the best way to get them. It could be well that going indie is going to get you to your desired career faster --- or it could nuke the possibility of achieving them.
ETA: Oh and about pressure: If you think the pressure in university is a lot, you're going to be surprised about what it takes to succeed outside university.
You are wrong. You are so wrong you do not even understand it. Why? Some examples:
You need to write a fast app. You need to know the data structures for the right job (trees, lists, hash maps). You want to write a database app. You should know which fields to index and which not. You want to do some geospatial app. You need to know the correct indexing (R-tree). It is very hard to know these things on your own.
What you can find in the internet: how to do a hash map in C++
What you cannot find in the internet: why you need a hash map in the first place and so-on.
So, finish your studies and you will understand later why those studies were useful.
If you are so good you think you are at coding (which you probably are not unless you get paid for it and others agree), you still do not want to have a technical manager who knows less than you but has the degree (you do not have). So, you will need the degree anyway.
You sound like you're an independent worker, who dislikes and just is not suited for the structured learning style of University courses. Fair enough, there are many others like you. It doesn't mean you won't benefit from a University degree, it just makes it a little tougher to get there.
I'm like that too, yet now that I am doing research and am free of undergraduate classes I'm enjoying myself a lot more. But you still need that knowledge and those skills gained from those courses, even if you don't like it.
Being able to teach yourself is a fantastic ability, but a University degree will give you solid ground to stand on with regards to your employability. You will look a lot more desirable to an employer if you have a degree, and considerable personal achievements to back it up.
The only people who I would even consider advising to not go to University are those who:
- aren't bright enough,
- are passionate about something that doesn't benefit from a degree,
- or who genuinely cannot afford it.
You're neither. Not only will a degree give you a significant boost early in your career, but you'll probably gain more skills and knowledge than you think you will.
Stick with it.