Turn on thread page Beta
    • Thread Starter
    Offline

    2
    ReputationRep:
    I'm considering switching from Chemical engineering to Computer science at university - due to better job prospects and not enjoying the amount of maths in ChemEng

    So I wanted to ask, for those of you in IT and technology, are you happy with your chosen career path?

    How are the job prospects and do you enjoy your work? And what do you do/want to do?
    Offline

    18
    ReputationRep:
    Personally, yes. At the moment, I'm a software engineer, working in a lot of projects based around C#, Angular and SQL. It's something I've been interested in since I was about 13 - I started out tinkering with computers, building my own, messing around with Windows, got a C++ programming book and spent a year or so teaching myself. Programming was my hobby until I was able to study Computing at A-Level, then later at Uni. (And now studying yet again after quite a long break ).

    Obviously having started out doing it as a hobby made my life much easier at A-Level and University - I found both of them much easier than most other people on my courses, so I'd had a decent headstart. With that said, there's a vast difference between writing code at home, or at uni, compared with doing it for a full-time job.

    The "real world" is just a whole different experience, and there are a lot of things about working for somebody else in real projects, with real deadlines and real clients which you cannot teach yourself, and which no university course is able to teach you. Otherwise, my job prospects look great from my point of view - Now having my foot in the door and a few years under my belt I no longer have have any worries about being out of work or being pigeonholed, and the last time I went looking for a job I got 3 different offers out of 5 interviews, all who offered me the salary I asked for.

    IT is essentially all about problem solving and critical thinking. By which I mean, it's not enough to simply solve a problem by any means, it requires depth of understanding, and the skills to reason about different posssible solutions. Most problems can be solved in many different ways, so most people tend to have the ability to solve a problem by some means, but fewer people can look at a problem in sufficient depth to get the "right" solution (which for anything non-trivial often tends to be subjective anyway, usually with "ifs", "buts", "maybes" and risks/trade-offs).

    It takes a strong analytical mindset to be able to do this well - nobody starts out being great at it. People who succeed do so through gradual, slow improvement over time - nobody is ever perfect, and everybody always has plenty of room to grow and improve, but that makes the work itself extremely gratifying - not everything in IT is scientific; when you know there are multiple ways to solve the same problem, it brings an element of creative thinking too.

    The other aspect to IT is that technology is moving faster than many of the people who work in it, so if you work in IT, then learning will be an ever-present feature; there will often be demands and pressures placed upon you to stay on top of the evolution of technology. It's not the kind of career where you just learn a set of technical skills and then go in search of a job for life. The plus-side to that means that people who work hard and are always teaching themselves new things remain in high demand. The downside is that everybody is constantly chasing a moving target, and that can be a little draining if you're not up for it.

    It also means that the word "experience" has a weak correlation against the number of years you've been working in the field. IT is filled with people who have decades of calendar years of experience in IT, yet many of them have essentially been doing same job in all those years using the same technology that they used 20 years ago. Some people in IT do stagnate, which leaves those people having fewer career opportunities (and lower salary) than somebody with 7-10 years of modern, relevant experience who has had several different jobs using up-to-date techniques and technologies.

    Maybe many people find IT to be a tougher industry to work in as they get older, and perhaps it gets harder for some to find the motivation to keep up. Otherwise, it's rapidly-evolving, rewarding, interesting, and satisfying - if that's the kind of thing which you enjoy anyway.

    I have no idea about Chemical Engineering careers, so I couldn't possibly compare I'm afraid. Software Engineering certainly has very little maths involved in most areas anyway. (There are some niche sectors which involve a lot of maths - usually anything which crosses over with scientific modelling, or game development. Otherwise, there are plenty of great software engineers out there whose maths skills are relatively weak)
    Offline

    19
    ReputationRep:
    Winterscoming, what do you think are the big upcoming trends and the skills/languages/experiences a graduate would need to stay ahead of the curve?

    Also, what is a good way to start learning about programming? I haven't gone to uni but some of the courses on the internet are dead boring, do you know of any good resources?
    Offline

    18
    ReputationRep:
    (Original post by hamzaahmad786)
    Winterscoming, what do you think are the big upcoming trends and the skills/languages/experiences a graduate would need to stay ahead of the curve?

    Also, what is a good way to start learning about programming? I haven't gone to uni but some of the courses on the internet are dead boring, do you know of any good resources?
    If you're still learning, then "trends" aren't really important. Having expertise in particular technologies affects your salary when you have 7-10+ years experience and you're looking to move into a higher paid job. At the junior or graduate end the of scale, those trends are really just meaningless buzzwords which won't really affect your employment chances, so focus on core analytical and problem solving skills, as well as picking up a good foundation in all the fundamentals - ideally by focusing on at least one language for general programming.

    The best way to start rather depends on what you're most interested in. If you're interested in web development, then start with HTML, CSS and JavaScript - these are the 3 languages of the web, because those are the ones which web browsers understand.

    If you want to focus on general software engineering skills, then leave the front-end web skills until later and start with a high-level language from the "C" family (e.g. Java, Python, or C#), as well as getting your head around Object-oriented programming/design. Whatever language you use, make sure that one of the first tools you teach yourself is a Debugger. Also, Unit Testing is increasingly being looked upon by employers as an essential programming skill.

    Also
    - Learn about SQL and databases
    - Learn how to use "git" for your source control management.

    But since you asked about trends, the kinds of jobs you're likely to find often involve Web Apps and Mobile Apps on the front-end, then "REST" web services at the back end (Also, Cloud hosting, but this is a more general technology topic than a programming one) - though these have been around a while and aren't exactly "buzzwords" any more, they're the kinds of things which University graduates typically use as part of their final year projects, and there's a lot of great material around for learning about these - so this is where your 'competitors' are sitting at right now; there are still a lot of jobs going around in web app or mobile app development, and certainly many companies building back-end services with RESTful server-side technologies. so those aren't going to disappear any time soon.

    The ones which are rapidly evolving at the moment are 'Blockchain' (The more general name is "distributed ledger" - but most people know it as Blockchain), Machine Learning, so-called "Big Data" and then "Internet of Things" (IoT). I imagine the technology around them will most likely change (and grow) a lot over the coming years, However, it is certainly good to understand at a basic level, what they are, how they're used, why they're important, etc.

    I understand what you're saying about internet courses being a bit boring. To be honest, if you think those are boring, you might not really appreciate some of the lectures which you'd sit through at University. A lot of programmers and computer scientists are really boring people who write boring books and create boring web content, boring videos, etc. If you enjoy the subject though, that does make up for a lot of it

    If you want a decent non-boring intro to Comp Sci and programming, then the Harvard professor who presents this course is a lot less boring than most, so give this a try. (I'll warn you, however - C programming is not the easiest thing to start with, but this is still an intro-course designed for people with no previous experience, it's just fairly intense..)
    https://www.edx.org/course/cs50s-int...harvardx-cs50x

    If you want something a lot easier (no videos, but the interactive tutorials are still very well designed), then try starting in Codecademy just to get your feet wet with the basics - there's quite a lot of content here, so just pick one course at a time and work through these: https://www.codecademy.com

    There are all kinds of good free courses on edX - all of them are either from global top Universities, or companies like Microsoft. Some of them might still be a bit boring, but they're still high quality (and they're free..) https://www.edx.org/course/?subject=Computer%20Science

    If you're willing to pay a bit of money, then also check out TeamTreehouse - https://teamtreehouse.com/tracks (it's £20 per month) - Be warned that paying money for a site like this doesn't really give you any new information that you won't find for free online - Sites like Treehouse focus more on the learning experience, customer service, etc. To a certain extent there's always going to be some truth in the saying "You get what you pay for..".
    • Thread Starter
    Offline

    2
    ReputationRep:
    (Original post by winterscoming)
    Personally, yes. At the moment, I'm a software engineer, working in a lot of projects based around C#, Angular and SQL. It's something I've been interested in since I was about 13 - I started out tinkering with computers, building my own, messing around with Windows, got a C++ programming book and spent a year or so teaching myself. Programming was my hobby until I was able to study Computing at A-Level, then later at Uni. (And now studying yet again after quite a long break ).
    thank you very much for your detailed response! It is very helpful
 
 
 
Reply
Submit reply
Turn on thread page Beta
TSR Support Team

We have a brilliant team of more than 60 Support Team members looking after discussions on The Student Room, helping to make it a fun, safe and useful place to hang out.

Updated: February 21, 2018
Poll
How are you feeling in the run-up to Results Day 2018?
Useful resources

Featured recruiter profiles:

CGI logo

CGI is open for applications

"Offering a range of apprentice and sponsored degree positions."

Quick link:

Unanswered IT and technology threads

Groups associated with this forum:

View associated groups

The Student Room, Get Revising and Marked by Teachers are trading names of The Student Room Group Ltd.

Register Number: 04666380 (England and Wales), VAT No. 806 8067 22 Registered Office: International House, Queens Road, Brighton, BN1 3XE

Write a reply...
Reply
Hide
Reputation gems: You get these gems as you gain rep from other members for making good contributions and giving helpful advice.