7 Replies - 808 Views - Last Post: 12 November 2018 - 06:20 PM

#1 Kernel0010   User is offline

  • New D.I.C Head

Reputation: 1
  • View blog
  • Posts: 23
  • Joined: 05-January 15

Help me with life advice

Posted 02 September 2018 - 06:34 AM

Hi! I'm really looking for life advice from people that code for a living and I'll try to keep this as short as possible.

So back story about myself, I'm 20 with no formal education. I currently work with repairing computers so i do have a job.

Although I enjoy my work because it's within tech, my interest has always been around writing code and software, even though i've never actually got to do it seriously, i've obviously programmed a little before.

So my ultimate dream in life is to move abroad to the US and work as a programmer.

Now to my questions.

How is my background without a degree going to hinder me to pursue software engineering as a career?

What programming languages are good payed and require less time to actually start producing software so you can land a job in as a short time as possible?

I'm in all honesty a little depressed about my current life position that i messed up so early in life by qutting school. I've always had a passion to pursue this, but i just need advice from somebody if my goals are realistic.

Is This A Good Question/Topic? 0
  • +

Replies To: Help me with life advice

#2 xclite   User is offline

  • I wrote you an code
  • member icon


Reputation: 1380
  • View blog
  • Posts: 4,205
  • Joined: 12-May 09

Re: Help me with life advice

Posted 02 September 2018 - 07:31 AM

A lot of people are going to think less of you for not having a degree, but in my opinion it is by no means required. There are bootcamps which do lend some credibility, warranted or not. In my opinion you need to actually do it seriously; work on a project, build something you need.

It sounds like you want to do this, hence your question about programming languages.

Most languages are "comparable" in pay, by that I mean they aren't the limiting factor in how much you get paid. They also mostly can all accomplish similar tasks, with some being better at certain areas than others.

I'd generally try to classify things by their "lifting power". How much do you get, from a market point of view, from learning a language? My suggestions:

Javascript. It pains me to say this, but node.js has growing mindshare in the startup world. People are building microservices in it, you can build extremely resource-greedy desktop applications with Electron, and of course it's a given for browser development. If you want to get the most bang for your buck, learn Javascript.

Python/Ruby: These are both good scripting and serverside languages. Both have good web frameworks (Django/Rails, Flask/Sinatra). Python also has excellent coverage in machine learning and data science environments.

C#/Java: These are "blue collar" languages. They are very similar, which is in my opinion a good thing: they're fast enough, high level enough, etc to get a TON of things done reliably. These get you into more traditional, more established, or less "techy" software roles, and are good languages to know ANYWAY (C# is very prevalent in game-dev, a variant of Java is used for Android, etc).

Swift/Kotlin (or Java): I only mention these languages because it's totally possible to make a living developing mobile applications. Swift and Kotlin are actually really good languages, but don't open as many doors for you at first.

C/C++: These used to do what C# and Java do. I wouldn't invest in them now unless a niche specifically calls for them, and it sounds like you want a step into the industry, not a super limited job scope.

Scala, Haskell, Clojure, F#, Erlang, Elixir: These are all extremely interesting. They're also harder to learn and harder to find jobs in.

PHP: Don't learn this language. There are actually a lot of jobs out there for it, so as a last ditch this isn't a horrible idea, but in general it has low lifting power.

Perl: Just use Python or Ruby.
Was This Post Helpful? 4
  • +
  • -

#3 Martyr2   User is offline

  • Programming Theoretician
  • member icon

Reputation: 5395
  • View blog
  • Posts: 14,301
  • Joined: 18-April 07

Re: Help me with life advice

Posted 02 September 2018 - 07:46 AM

I agree with most of what xclite has said, except for the PHP part. I actually think it is a great option to learn since all the jobs out there and the fact that it runs nearly half of all sites on the Internet due to the popularity of the big three CMS systems... WordPress, Drupal and Joomla. Plus I know of many shops that use it for backend scripting power now more than ever due to PHP 7 being focused more on speed and reliability.

As for advice on jobs and education, degrees are not the be all to end all when it comes to software development. Companies want to simply know one thing... can you do the job and do it well? The best way to show them is to put together a portfolio of some work you have done. Show them code you have written and be able to explain why you chose certain design decisions. Get involved in the development community. The best place to start is by contributing to a github project.

Sock away a few years of experience doing that and you will find it is easier to get a junior development role at a company. Then keep the learning going while in the job and the next thing you know you are a senior dev. Target a company you want to work for and see what they want from candidates, tailor yourself to what they are looking for with your skills.

If you are passionate about what you do and enjoy it, your skills will show through on your portfolio and attitude. Companies will forget about your lack of degree and hire you right on. I will say though be very realistic about getting into the US right now though. With the current political climate, visas for skilled workers are under severe scrutiny. It might be better to try Canada or the UK if you can. In fact many countries in Europe will even pay for your education for you. I know people who stayed a few years in Europe, got a free education, worked there a few years (which is how reimburse the education system for the free tuition) and then moved where they wanted to be eventually.
Was This Post Helpful? 1
  • +
  • -

#4 xclite   User is offline

  • I wrote you an code
  • member icon


Reputation: 1380
  • View blog
  • Posts: 4,205
  • Joined: 12-May 09

Re: Help me with life advice

Posted 02 September 2018 - 08:12 AM

View PostMartyr2, on 02 September 2018 - 10:46 AM, said:

runs nearly half of all sites on the Internet due to the popularity of the big three CMS systems


Hard to overstate this, for sure. Just want to point out that half of all sites is different than nearly half of all software systems, so while PHP dominates in terms of install-base for rendered HTML, that doesn't mean it dominates in terms of install-base for software in general.

The tl;dr is that PHP runs a lot of software, but if you want entry to a variety of industries... why limit yourself when a clear "winner" (excuse me while I vomit) is out there in Javascript?
Was This Post Helpful? 0
  • +
  • -

#5 jon.kiparsky   User is offline

  • Beginner
  • member icon


Reputation: 11497
  • View blog
  • Posts: 19,569
  • Joined: 19-March 11

Re: Help me with life advice

Posted 02 September 2018 - 05:37 PM

For what it's worth, I agree with xclite - I don't see any point in learning PHP in 2018. Python is a good general purpose language with good library support for just about anything you can think of to work on. I would start there.

More important than the language, though, is to ensure that you're developing your computer science fundamentals alongside your programming chops. You will (hopefully) never be called upon to implement a quicksort, but understanding how your searches and sorts work and why some are better than others is critical to getting past the raw junior level of your career - and it can be important to even get you in the door. Many interviewers will try to figure out whether you understand algorithmic scaling and time complexity, and your level of understanding here often serves as a proxy for your future potential. Basically, if you don't understand why and how your code gets slow as the input grows, you're only ever going to be able to take on small problems.

I don't know much about your situation, but if you can manage to take some basic CS courses - discrete math is useful for the proofs and the mathematical logic, data structures and algorithms is the critical piece, and anything else that you find interesting will probably not be a bad thing to do - that will at least show that you're trying to advance your knowledge, which honestly goes a long way with a lot of people.
Was This Post Helpful? 0
  • +
  • -

#6 Carly Swinson   User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 9
  • Joined: 10-September 18

Re: Help me with life advice

Posted 10 September 2018 - 06:00 AM

You need to hone your skill so much that people will come to you for work rather then other way around. Work hard and live your dream. Software engineering is not that difficult if it interests you and you are willing to take it seriously.
Was This Post Helpful? 0
  • +
  • -

#7 myralyons   User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 3
  • Joined: 25-October 18

Re: Help me with life advice

Posted 26 October 2018 - 12:34 AM

View PostKernel0010, on 02 September 2018 - 06:34 AM, said:

How is my background without a degree going to hinder me to pursue software engineering as a career?

What programming languages are good payed and require less time to actually start producing software so you can land a job in as a short time as possible?


1. Degree is not necessary if you have the right skills.
2. You can go with python.
Was This Post Helpful? 0
  • +
  • -

#8 h4nnib4l   User is offline

  • The Noid
  • member icon

Reputation: 1371
  • View blog
  • Posts: 1,952
  • Joined: 24-August 11

Re: Help me with life advice

Posted 12 November 2018 - 06:20 PM

There are already some pretty solid answers in here, bu I'll add my $.02 anyways.

"You don't need a degree" is not the same as "you don't need an education". I'm actually happy with my degree - I studied CIS rather than CS - but that schooling really just taught me how to learn to learn to be a programmer. When I walked into my first internship, I quickly learned that the volumes I thought I knew were merely a part of the foreword. Since then, my real education has come through paying for a PluralSight membership (I work primarily on Microsoft technologies) for years, buying books, working through side projects (even if they didn't go very far), and even working through some of Microsoft's certification programs. All of that reading, "practical application" work, studying of sample code, and spending thousands of hours lurking in and contributing to programming forums - that's where I've really learned how to do this thing.

I've been at it for nearly a decade (although now I'm primarily an architect rather than an engineer), and I still wouldn't say I know a whole lot, but I'm always learning. That's the real trick - languages constantly evolve, new languages come (some stay, some don't), new patterns/anti-patterns are identified, new architectures are derived (some of which are just old ones re-branded) - you'll always be learning, but what you have to get good at as learning how to learn it. Part of being a good programmer is being able to evolve with the industry.
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1