5 ms·
>Many places I apply to want people who have experience in software development or they want to hire a junior for some super low pay. That's because you are a
by hoorayimhelping 6y ago
>Many places I apply to want people who have experience in software development or they want to hire a junior for some super low pay.
That's because you are a junior developer and you're only worth a junior engineer's pay. Sorry if that's harsh, I'm a bit blunt; but it's not a value judgement or a criticism, it's a statement of fact. Go work at a place that pays you a junior engineer's salary and learn the industry skills you need to earn a better salary.
>I've got lots of projects I've done in the last year.
That's really great, and it'll give you a leg up on the other junior programmers who are applying at places. But projects don't confer industry experience with a team, which is what places are looking for. It's a world of difference between "I've done projects on my own and I can complete them," and "I've worked with engineers, product managers, managers, designers, non technical people and together we have shipped software." All of the stuff you're doing is setting you apart from your competition, but realize your competition is for junior roles.
To answer the question:
>Is there hope for me?
Absolutely. You seem smart and driven and capable of communicating. In my 14 years of coding professionally, I've worked with people who studied communication, linguistics, a foreign language, creative writing, IT, electrical engineering, mechanical engineering, electrical engineering, music composition, etc. Some of the best engineers I've worked with had no formal training. It's totally doable. Being able to teach is a really good indicator of at understanding complex issues and being able to communicate them, all valuable skills for a software engineer.
Also, don't get discouraged during the pandemic. A lot of places are buckling down and if they do hire, it'll be an experienced person who normally wouldn't be on the market but is because of the virus. It's gonna be tough for junior engineers for a while until the economy spins back up.
- dan-robertson 6y agoI feel that this may present overly negative outlook. Sure, you will likely take a junior position but the I think the variance between junior and senior within firms will be less than the variance between firms. That is, if you think offers are low this may depend a lot more on the location/size/type of firms making offers than on the position they feel you qualify for. It may be worthwhile to consider different sorts of companies: smaller companies may not be able to face the cost of getting you into the position where they feel are profitable and so may charge you a lower salary top cover for it. Larger companies may feel they can more easily cover the cost of training and have you profitable sooner and so they may be better able to look for raw potential, which hopefully you can show. Some larger companies may try to exploit you for cheap/inexperienced/naive labour. Possibly there is an advantage to being able mix in your mecheng knowledge, possibly not. The current pandemic is a large confounding factor in any difficulties in your job search. Apart from many companies struggling, others may not have set up systems for hiring while they are wfh, and there is surely more supply of labour than demand compared to usual because of this. I don’t really know if this advice is any help. I don’t think I’m particularly representative (though I wonder if anyone is). I would take everything here with caution if I were you (this sentence of advice is something which I more strongly feel is good)
- tracer4201 6y agoI have about 10 years experience across different big tech companies. Kudos to you for a well written, realistic response.
- mzzter 6y agoThis answer resonates with me a lot. I was in a what I consider to be a similar situation as the OP three years ago. Graduated with a fine arts degree, made a switch in developing software skills, took a few quarters of community college classes. Had over 200 side projects when I started applying around in 2017. I did a year at a part-time internship for almost no pay. In 2018, I started applying again with much more responses, and I finally landed a full-time software engineering role with my current company. Been really enjoying working here. Open to chatting, email me at "~ (at) mtso (dot) io".
- nick_kline 6y agoAlso consider getting your masters degree in CS. If your school offers it you will probably get super low tuition while working there (sounded like outside the us, must be even cheaper elsewhere). Then you will be very employable and also count for two categories in some companies that want a programmer with other skills, just like mine does.
- polishdude20 6y agoHow can you get a master's in CS before getting a bachelor's in CS? I've got a bachelor's in mechanical but I doubt id be able to get a master's in CS with just that.
- ghufran_syed 6y agoI think it depends on the educational system you have access to. I went to university in England, and the bachelor's degrees are 3 years long, and completely domain focused e.g you just learn computer science. So the MS degrees in that country in that country expects that material as prior knowledge. In the US, bachelor's degrees are four years, and also include "general education" requirements. So in England, they would often expect you to do a 2nd bachelor's before doing a masters degree, whereas in the US, it would be a waste of time for you to do a second bachelor's, so instead they tend to give you "conditional" admission to the masters, but expect you to complete undergraduate (bachelor's level) CS courses before proceeding to the MS level courses. The bachelor's level courses don't "count" towards your MS, but you still have to complete them before you can start or complete the MS courses. It sounds like you do have the opportunity to go work as a software engineer, but the pay seems too low to you. Instead, think of it like a university where they pay you :) As another person commented, the real value is the industry experience that you get, the (low) pay is just a bonus, so take it unless you actually can't survive on that for a year or so. Even 1 year of low paid industry experience will be more valuable to you than a BS + MS in computer science in the short term. In the long-term, the skills you learn in an CS degree can be useful, but they get more useful the further along you go in your career, so better to learn them part-time as you proceed in your career.
- polishdude20 6y agoYeah I'm sort of hesitant to enter a new career during this pandemic since a lot of companies are going under. I'd rather wait it out at my current job while I keep working on side coding projects.
- pcmoney 6y agoThat’s totally reasonable but just be aware side projects have severe diminishing returns after awhile. Unless you are shipping complex software as part of a team it is not preparing you more. You will still be junior. The exception being if you invent NPM or some similarly massive FOSS contribution. But if you could do that you wouldn’t be asking if there is hope for you. The sooner you write code with other professionals for money, even part time, the better off you will be when you make the switch. Personally I haven’t done side projects in years and it has come up zero times in startup, consulting, and FAANG interviews. Once you have experience pretty much nobody cares and until you have experience no matter what you do, you will still be junior. Writing code and building things is the easy/fun part of being a developer but its the other stuff that matters. Also I came from a non-traditional background and have lead teams on quarter billion dollar projects. Once you prove you can ship nobody who matters remotely cares about other, preliminary or proxy credentials.
- polishdude20 6y agoYeah that's why I feel like I may be at the point of applying now. I'm thinking of maybe getting a few leetcode problems under my belt for a few weeks just in case that comes up. But yeah, the pandemic being what it is, if I'm applying for a job I want to make sure that 2 months in I don't get let go cause the industry isn't doing well anymore.
- x0x0 6y agoI'd suggest jumping in, if you have some financial buffer. The reason is all your future peers are getting paid to spend 25+ hours a week writing software. You need to get on that same plan.
- babaganoosh89 6y agoMaybe at large companies, but startups in SF will hire you as mid-level if you have some good projects and interview well.
- Google234 6y agoYou will then be expected to work at thst mid level and evaluated against actual mid level engineers.
- nickysielicki 6y agoDo tell, what is an "actual mid level engineer"?
- lozaning 6y agoSomeone that does more than just the work assigned to them by someone else. It's largely more about how much influence you can be expected to have than a hard delineation in technical competence.
- arcticbull 6y agoThese are actually pretty well defined at the lower to mid levels. This is a ball-park. - IC3: Executes well on what is assigned to them by their manager. Requires direction. Does only what is told. Frequently an up-or-out role. "New Grad" - IC4: Identifies proactively what needs to be done and works with their manager to justify and schedule it. Beginning to show signs of independence, but requires managerial guidance. Frequently an up-or-out role. "Junior Engineer" - IC5: Identifies proactively what the team needs, and leads a cross-functional effort involving 2-3 individual contributors to complete it or solves the hard problems. Effectively autonomous, low blast radius. Terminal role. "Engineer." - IC6: Identifies proactively what the nearby organization needs beyond just the specific team, and leads a cross-functional effort involving 4-6 individual contributors, PM, marketing, design, etc, to solve those needs -- and solves the hardest problems. Effectively autonomous, high blast radius. Terminal, well-paid role. "Staff Engineer." The poster sounds like an IC3, and is likely to be paid like an IC3 until they can demonstrate their chops. At a start-up especially one without an engineering ladder, you start as an IC5. You will need to perform like one, as there's not a whole lot of room for folks who don't. FWIW, these numberings vary from company to company but expectations are roughly in line industry wide. Even if your company doesn't have a ladder, you should act like it does because when you company gets one, you wanna be up top.
- gigatexal 6y agoI agree more or less. I have only 7 or so years in the industry but everything I learned is self taught. You will be fine. You just have to put in the time to be a grunt. Junior dev jobs last but a second and once you have the production level (be sure to network your butt off at these early roles and alway be interviewing to get to your next more substantial role) you will be fine. You have a solid STEM background, a passion for development (something that I’ve had come and go — it’s easy to get discouraged: I place too much value in what others speak of me or about the quality of my code — at least for me but that’s a personality trait that I’m working on you might not have the same issues as I do), and a growing portfolio of work. The only thing you need now is patience and time spent as a junior dev but with your set off skills I’m sure you’ll work your way up rather quickly. Good luck!!
- amatecha 6y agoMan, as true as that might be, the delivery could be a lot more considerate. I was going to write a comment to the effect that, yeah, without the relevant experience, you will generally have to start out at a more "entry-level" position, and work up to a more senior position over time, after you've grown and learned more etc.
- fsloth 6y agoI think that was very considerate. Sometimes the best form of communication is to the point. This is the best response you could give to this question. And for OP to succeed long term, this sort of communication is precisely what they can expect from the best mentors out there - absolutely correct, honest and terse. Between engineers not everything needs to be wrapped in ‘business standard’. If you communicate like this to non-technical stakeholders it will make you come out like an asshole. But that’s a different venue, then.
- amatecha 6y agoThe idea that technical aptitude is somehow inversely correlated with how much consideration a person should receive is a terrible concept that is constantly used to validate toxic behaviour. I understand the rationale. We don't need the "filler" or "extra padding", or perhaps the "hand-holding". The fact is, that's all irrelevant. You can easily communicate the exact same information and not be cold and careless about it -- as I demonstrated in my prior comment which I casually typed up in like 10 seconds while getting ready to go out. When you communicate with people, it affects them in some way or another. As a result, how you communicate makes a big difference, whether on the job or elsewhere. Some people may be more sensitive about that kind of stuff than others. So you "assume the worst", especially when someone is coming to you for help, and you treat them kindly and with consideration. Great mentors never say things like "your code is shit", they say "this will probably run slower than it could - let's get on a call and discuss this". I understand that communicating like this as a standard doesn't come naturally to a lot of people, but it's not "business standard" or some kind of special ask because of executives or MBA guys. Further, it goes a damn long way with people, pretty much anywhere in life.
- mcv 6y ago> "Also, don't get discouraged during the pandemic. A lot of places are buckling down and if they do hire, it'll be an experienced person who normally wouldn't be on the market but is because of the virus. It's gonna be tough for junior engineers for a while until the economy spins back up." Also, junior engineer require a bit more guidance to get up to speed, and that's harder to do with everybody working from home. On the other hand, your experience working on private projects might be a bit more relevant. What would be more relevant is open source projects where you do need to coordinate with other open source developers online. That's suddenly much closer to the standard work experience now.
- zamalek 6y ago> On the other hand, your experience working on private projects might be a bit more relevant. I think this is a bit closer to OP (although I strongly agree with your first sentence in general), because they are clearly putting in a good deal of work themselves. > open source Couldn't agree more. The best thing to do right now would be to outright abandon those personal projects and start contributing. OSS is not only a portfolio of your personal skills, but also your interpersonal skills. Personal projects are only the former. (Maintainers are also typically great mentors) Edit: this is a great place to get started: https://up-for-grabs.net/ https://up-for-grabs.net/
- qorrect 6y ago-- "I've done projects on my own and I can complete them," and "I've worked with engineers, product managers, managers, designers, non technical people and together we have shipped software." You've managed to describe everything awful about programming in one sentence. You are the reason he can't get a job, only you, you god awful human.