Hello, my name is Derek and I'm a geek. I've been playing with computers for about 10 years now. I'm 23 and I am not sure which area of IT I would like to specialize in. I hope some of you may have some advice for me.

Background
I convinced my parents to buy a computer in 1999. I spent all of my time on the computer and eventually learned how it worked and how to fix them. I learned HTML and had my first web page up at the age of 15. When I was 16 I started toying around with QBASIC and learned the very basics of programming. A year later I started learning the basics of VB and played with it for a little while.

When I was 17 I got my hands on a Linux disc (Mandrake 8!) and I have been a Linux / FOSS advocate ever since.

After high school I studied computer engineering for one year before dropping out to get a job. I enjoyed college, but I slacked off and fell way behind. I would not have dropped out if I could do it over again.***

After dropping out I got a job working as a remote Jr Linux system admin for a web hosting company in LA. That job was enjoyable however repetitive and very slow at times.

After about nine months of working as a remote jr linux admin I went to work for a Wireless ISP. I was mostly a tech support person, but I also got to go outdoors (tower climbing, customer installations) and play with a few servers.

After this I did some freelance computer work and web development for some clients around town.

CURRENT
I now work as an IT Technician for a medium-sized business in the city. I can't complain about the position, I get to do a little of everything.

Hence the problem - I am worried that if I continue doing a "little of everything" I'm never going to be really valuable and never really make a decent living at what I do.

I am interested (or maybe not interested) in too many topics. I'll list them below. I cannot pick one to concentrate on and learn.

I go back and forth from wanting to learn one thing from wanting to learn another. For example, I started to tackle a Testout Training CD for the CCNA Certification without finishing, then I started training on Win 2008 Server / Active Directory without finishing, and now I have a Learning C# book on my desk!

I'm interested in everything, however I realize I cannot do it all.

Running my own business has also been a dream for several years. But we're back to the fact that I'm not a specialist in anything and steady income is VERY important to me right now.

What Interests me:
Web Development - PHP/ASP/RoR
Web Design
App Development - C#
Databases - MySQL
Linux
Sys Admin
Network Engineering
Virtualization
Telecommunications
VoIP
Net Security
FOSS
Photography
Audio Engineering
Outdoors-ish stuff.

Has anyone out there experienced a similar situation when not having a clue about what they want to specialize in?


*** Yes, I have considered going back to college and I plan on going back at some point. Probably next fall if time and money permits.

I can't tell you what you should go for, but I had a similar story (started writing in Basic on a Commodore 64 in 1989) and I ended up a Linux Sys Admin. LAMP applications and Clustering are fun times.

Cheers

I personally chose engineering specifically because I wanted to do a little of everything. Just my take - but it seemed like most of the CIS majors at my college knew a little bit about alot of stuff, but the software engineering majors knew a lot about alot of stuff. After reviewing the curriculum with seperate counselors, i chose the engineering path , because it seemed to have all of the fundamental CIS courses, plus the extra math and electronic engineering courses that the CIS students didn't get. After visiting some jobs (i was lucky enough to get a tour from relatives of nasa and a small electronics company) I definitely feel like I made the right decision.

I'm sure you can excel in most (if not all) of the fields mentioned above.

Here's what I'm doing to reach my goal of learning a wide range of topics:
1. I want to learn 1-2 things REALLY REALLY good. for me right now its java and xhtml/css because i already knew some before starting college. Plus if times get tough, you can always fall back on a job in something that you're really good at.

2. Test myself through forums, certifications (just for self assurance), and sample textbooks; to make sure I'm really really good at it. (i want lots of feedback to see where i'm at , criticism welcomed)

3. after i'm comfortable with 1-2 languages, I'll move into more stuff - this will come much more quickly if I'm fluent in my background language. I'm currently in a c/c++ course, and already found the transition to be very smooth b/c of the java background. I kind of don't even know why i have to take the course, I learned most of it already on my own.

4. schedule regular intervals of time for learning. structure that time so i get something of value out of it. for me, i try to go through a textbook for 1 hr each morning. I keep a text file of all the topics that I need to work on more, then revisit them the next day. It's only an hour, but try learning and practicing 10 new methods in the java library each day and you'd be surprised by how much more you know at the end of the month.

5. read a ton. whenever i can. i canceled cable b/c i only watched 2 channels (1 was pbs anyway) and it distracted me from reading at night. books give me alot of inspiration, especially biographies. technical books are great too, but i have to mix it up or i get bored to death.

6. join some open source projects and get my name out there.

7. join a startup that i can get alot of knowledge out of. i don't want to get stuck in a corporation making boring database queries and simple apps that don't require alot of real inventiveness.

when I chose to move into computers (my real background is accounting), I had a friend tell me to choose one of these fields first: programming, databases, networking, or security. But I still reject the notion that you need to only be in one specific skill set. I chose engineering because the 2 people i personally know who consider themselves true software engineers (my uncles) , seem to know everything. they have no problem debugging tons of code, fixing problems in sql queries, making elegant webpages, all sorts of networking issues... everything and they can do it in almost any language/script language the client needs them in. On top of it all, they design alot of the hardware components needed for embedded systems. Maybe my uncle is an exception, but i truly believe that you don't NEED to settle on one technology or area of focus, at least in the beginning. Just get really good at something you like and see where it will take you.

I am also looking for the same answer. I started web designing from home. I am not sure what to do.

I am also looking for the same answer. I started web designing from home. I am not sure what to do.

Hey, I'm actually thinking about doing some work on the side for extra cash. I think it will be mostly remote Linux administration work. How's web design working out for you?

I personally chose engineering specifically because I wanted to do a little of everything. Just my take - but it seemed like most of the CIS majors at my college knew a little bit about alot of stuff, but the software engineering majors knew a lot about alot of stuff. After reviewing the curriculum with seperate counselors, i chose the engineering path , because it seemed to have all of the fundamental CIS courses, plus the extra math and electronic engineering courses that the CIS students didn't get. After visiting some jobs (i was lucky enough to get a tour from relatives of nasa and a small electronics company) I definitely feel like I made the right decision.

I'm sure you can excel in most (if not all) of the fields mentioned above.

Here's what I'm doing to reach my goal of learning a wide range of topics:
1. I want to learn 1-2 things REALLY REALLY good. for me right now its java and xhtml/css because i already knew some before starting college. Plus if times get tough, you can always fall back on a job in something that you're really good at.

2. Test myself through forums, certifications (just for self assurance), and sample textbooks; to make sure I'm really really good at it. (i want lots of feedback to see where i'm at , criticism welcomed)

3. after i'm comfortable with 1-2 languages, I'll move into more stuff - this will come much more quickly if I'm fluent in my background language. I'm currently in a c/c++ course, and already found the transition to be very smooth b/c of the java background. I kind of don't even know why i have to take the course, I learned most of it already on my own.

4. schedule regular intervals of time for learning. structure that time so i get something of value out of it. for me, i try to go through a textbook for 1 hr each morning. I keep a text file of all the topics that I need to work on more, then revisit them the next day. It's only an hour, but try learning and practicing 10 new methods in the java library each day and you'd be surprised by how much more you know at the end of the month.

5. read a ton. whenever i can. i canceled cable b/c i only watched 2 channels (1 was pbs anyway) and it distracted me from reading at night. books give me alot of inspiration, especially biographies. technical books are great too, but i have to mix it up or i get bored to death.

6. join some open source projects and get my name out there.

7. join a startup that i can get alot of knowledge out of. i don't want to get stuck in a corporation making boring database queries and simple apps that don't require alot of real inventiveness.

when I chose to move into computers (my real background is accounting), I had a friend tell me to choose one of these fields first: programming, databases, networking, or security. But I still reject the notion that you need to only be in one specific skill set. I chose engineering because the 2 people i personally know who consider themselves true software engineers (my uncles) , seem to know everything. they have no problem debugging tons of code, fixing problems in sql queries, making elegant webpages, all sorts of networking issues... everything and they can do it in almost any language/script language the client needs them in. On top of it all, they design alot of the hardware components needed for embedded systems. Maybe my uncle is an exception, but i truly believe that you don't NEED to settle on one technology or area of focus, at least in the beginning. Just get really good at something you like and see where it will take you.

Hey jmaat7, thank you for your reply! Since I've posted this I've gotten on a career track (at least for now). I'm not sure what I'll want to do a year from now. But in the mean time I'm going for Comptia Network+ and soon after Linux+ and maybe Security+ later on.

SysAdmin/Networking seems to be the best route for me at this point.

Happy to hear that. It's wise to post searching advice about your career.

I am an ex-teacher, and ex-contract manager for a building engineering company. I'll tell you my position... I am also strongly considering retraining and am researching the best route to take, from a potential for employment and skills desirability point of view. I have an NVQ in computer installation and maintenance from about 10 years ago, have built 4 or 5 PCs in the past, am the 'go-to-guy' for IT troubles for friends and family, so am fairly competent. I have researched and found that the Comptia A+ and Network+ would be the baseline qualifications to get, followed by the Microsoft certifications, and that security and networking skills are in demand. Am I way off there?

I don't have a defined end-position of where I want to be in 5 years time (networking, project management, telecoms etc), but would like to enter into the industry with a general overview and have options from there on in.

My question is, is the technician route the way to get in the door?

Any tips or advice would be greatly appreciated, as I don't really know anyone in IT to ask.

Cheers, that would be a great help.

Tim.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.