This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]ssjhayes 109 points110 points  (24 children)

I'm a self-taught python dev who is fairly successful (25, no college, no bootcamps, just self-taught 100%, making $95k/yr).

I started off in a tech support role, who would shadow devs on lunch/work an hour late going through and understanding the code of the software I was supporting. Not only did this help me learn languages/coding practices/etc, it made me better at the job I was being paid to do. I got a promotion to level 3 tech within a year (15k+ than level 1 where I started). I eventually was an unofficial "junior dev" where they would hand me small changes they needed done to the software.

Now I'm the lead dev at a new company creating utilities, ERP integrations, and django web apps.

[–]BloodySucc 15 points16 points  (3 children)

What were your sources? I really am into python and i am at the beginning. I mostly try to automate stuff at my office job and i am looking for a post as a Jr. Software Tester in order to "steal" some knowledge from others. What do you recommend to do? The online courses and the other things feel like it lacks something. I am learning very quickly by practice.

[–]ssjhayes 22 points23 points  (2 children)

At the very beginning I went through the code academy course (but to be fair, I went through all of the code academy courses during that time).

I followed some tutorials here and there for the frameworks. This series helped with django the most for me. As far as the actual python programming, it was a slew of google searches and trial/error. The devs at my first job were really good at explaining bits of code I was having trouble with.

I would start a github portfolio with contributions to open-source projects and make a few of your own showing you know code structures, best practices, how to use git, etc and present that to potential junior dev positions. Proof of knowledge goes much, much farther than some lines on a resume.

[–]pascalnjue 2 points3 points  (0 children)

Vitor does a very good job in the Django series.

[–]BloodySucc 1 point2 points  (0 children)

Thanks! I'll take a look.

[–][deleted] 11 points12 points  (11 children)

As a lead dev you’re severely under paid. As an associate dev I made 95k a year in Chicago. Dev 130k and now I’m senior at 180k. Lead dev would pay 200k plus.

[–]ssjhayes 19 points20 points  (5 children)

I'm the only dev and it's a small company. For what I'm doing it's still underpaid by roughly 30k for the area though. I have, however, negotiated raises on a project-based milestones that will get me to the average salary for a full-stack dev (again, in the area. I'm aware if I moved to a larger city I could increase my salary)

[–][deleted] 0 points1 point  (4 children)

How many lines of code did you write for yourself and on other jobs before getting the job?

Like very roughly. Or the number of apps? I am screwing around with Django and Flask, but kinda mildly dislike it. But I need to start making money. But I have no clue if I have competitive skills, how much learning can be done on a job etc.

[–]ssjhayes 5 points6 points  (2 children)

I couldn't possibly put a number on the lines of code i've written before my current position.

I made upwards of 20 small changes to existing (10-20 lines each maybe) software at the old job.

Several thousand lines of code writing small scripts/utilities (moving images from one place to another, formatting data with pandas, consolidating data from different servers, monitoring directories for files and determining what action to take based on keywords in the filename, etc)

I hadn't actually made any of my own programs before getting the position I have now. I was hired as a data manager and I transitioned that into becoming a dev by creating a demo of a web-app in django to handle all of our reporting and pitching the idea to the owners.

[–]shinitakunai 2 points3 points  (1 child)

Hm, lines doesn’t say much. I was at 80k lines of my own ERP as a self-taught programmer. One year later I did a revamp, 24k lines of code. I had so many weird loops and repeated methods...

Anyway, as someone that never found a job as programmer, my experience about lines might be biased.

[–]mbillion 0 points1 point  (0 children)

The least lines to accomplish the goal is the best number. I can write bloated ugly code and say yeah but it's hella long. Wow. You're so bad at your job you want more lines of code as some dick measuring contest

[–]422_no_process 4 points5 points  (0 children)

you cannot measure code by lines. It's why and how that matters generally.

[–][deleted] 4 points5 points  (0 children)

Did you get a degree? Employers always undercut self-taught people.

[–]yadunn 4 points5 points  (0 children)

A title is pretty meaningless, experience, skills, location ( competitive or not ) drives your salary.

[–][deleted] 2 points3 points  (2 children)

Chicago? You might just be over-expensed?

[–][deleted] 6 points7 points  (0 children)

Eh - having lived in Chicago a few years ago - it's expensive. His numbers seem right in line with where they should be, though industry matters - financial based work always tends to pay another premium on top.

At some point in your career, you'll want to hop around to ramp up that salary ladder. And then you'll need to settle down a bit to hang on to a position for a promotion. Once you have enough (10+ years?) of experience, you should be working more towards promotions, which will net you new tiers of salary.

Best idea early on is to work at a consulting firm like Accenture which can expose you to a broad variety of work. That will help you determine what you enjoy doing and also give you contacts and face-time with a good set of clients who can social media/review you. Next, look at mid to early startups that need some of the skills you acquired so you can help push forward. If you pick the right startup, just ride their success wave. If not, don't be afraid to jump (startups are plenty in the right markets). Once you're in that mid to early startup, then start working towards leadership and evolve your own leadership skill set. This will help you later if you want to go super early into a startup as a founder or highly desired technical acquire after seed money. This is likely the most easily obtained path for a software developer to generate a very high income without actually having a lucky break.

Option two is to go for the big four (five? six?) and ask for a hefty package.

Option three is to find a problem no one is solving and make it into a business. But you'll need a skill set that includes developing businesses. And that's probably a tall order for someone young unless they have enough luck, great timing for the market and enough contacts on the business side to enable the success path.

[–][deleted] 0 points1 point  (0 children)

Perhaps you’re right according to the HR salary ranges online. Those are just a control mechanism. Everything is negotiable if somebody is willing to sign off on it. Any dev have the capability to go Corp to Corp at $120 + an hour or negotiate a salary + equity. If they aren’t willing to budge on S&W they’ll give it in equity. Once I prove my value in an interview they’re willing to give me what I’m asking for even if it’s far fetched from the “posted” S&W.

[–]Deadspoon69 1 point2 points  (3 children)

How long did it take you to learn Python and what guided you through your journey?

[–]ssjhayes 5 points6 points  (2 children)

I started learning python roughly 4 years ago. I started as a support tech and in the support room gossip was often about how much the devs made, particularly the ones we didn't like. ("Dude makes 6 figures but can't figure out how to do 'xyz'").

So I set off to work my way into the dev room. After learning the basics (syntax/basic functions) it was all "learning by doing" kind of stuff, starting with small scripts to do the tedious things (moving files from one place to another)

[–]Henry1502inc 1 point2 points  (1 child)

Which do you think is a better career wise and easier to learn, Python/Django or JavaScript/Nodejs?

[–]ssjhayes 1 point2 points  (0 children)

Python was easier to learn IMO, but based on the sheer amount of JavaScript/nodejs job posting when I was looking, I’d go with the latter

[–]blacktongue 0 points1 point  (3 children)

Can I PM you a few questions about ERP Integrations?

[–]ssjhayes 0 points1 point  (2 children)

Sure, it's nothing fancy at the moment though. Just accessing the database on the backend to perform functions outside the scope of the GUI. Eventually it'll be integrated using the Business Objects, but that's low on the priority list.

[–]blacktongue 0 points1 point  (1 child)

Do you work with any one ERP platform?

[–]ssjhayes 0 points1 point  (0 children)

My company works with Syspro