TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: any advice for someone changing career to become a software engineer?

26 点作者 tbassetto大约 11 年前
One of my friends in his late-twenty has a technical master degree (not related to computer science) but he would like to change his career to become a software developer. He is not satisfied with his current job &#x2F; working field and he is already learning HTML&#x2F;CSS on his free time. A bunch of his friends are software engineers (me included).<p>I think it is possible for him to work hard and gain enough knowledge to find a job as a junior web developer in a few months (a year?) from now. But should he focus on JavaScript and single page applications? On a specific framework? Should he still learn a server site technology and if yes, which one?<p>I am a JavaScript developer so maybe I am seeing this whole story with blinders. What if learning iOS or Android would be a better use of his time in 2014? I may be wrong, but it looks like the market is looking for &quot;native&quot; mobile developers more than web developers.<p>What would you recommend to him?

20 条评论

kephra大约 11 年前
There are millions of web bunglers in the indernet. Do you really want him to compete with them at entry job level?<p>You told he &quot;has a technical master degree&quot;. and I would advise to focus coding goals towards solving problems within his domain. He might be a bad coder, but he can certainly compete to an average coder, who has no domain knowledge.
评论 #7566330 未加载
评论 #7566961 未加载
评论 #7568221 未加载
systematical大约 11 年前
Regardless of what language&#x2F;platform he chooses your friend really needs to have a passion for this if he is to adequately self tech him self. By a show of hands, how many got into software development for the pay? I should see very few hands. Most of us are here because the idea of building something from scratch and seeing it to fruition was very appealing.<p>Whenever someone comes to me about getting into programming. I tell them they should think of an idea they think is awesome and start building it.
评论 #7566601 未加载
stonemetal大约 11 年前
You say he has a technical masters, Why doesn&#x27;t he pursue software development in that field? If he is an EE doing embedded hardware transitioning to embedded software could be an easier career move than generic junior web dev. There are computational specialties for every science i.e. computational biology, computational chemistry, etc. so he shouldn&#x27;t have a problem no matter which field his background is in.
评论 #7566913 未加载
评论 #7567080 未加载
dsk139大约 11 年前
Last year this time I was a middle school science teacher with little to no technical background. Now I&#x27;m a JavaScript software engineer and I teach others how to become software engineers in my free time. Some common trends I notice among my clients who are successful:<p>1) Grit - the ability the struggle through problems and dig through many rabbit holes&#x2F;frustrations<p>2) Passion - true passion for technology and trends to keep up with latest frameworks&#x2F;languages&#x2F;etc and patterns- generally (but not necessarily) is the first step for grit<p>3) Problem Solving Frameworks - the ability to create frameworks for yourself to solve programming issues including debugging, asking questions, talking to a duck, etc.<p>Feel free to e-mail (in profile) me and I can set up an intro advice call with your friend.
评论 #7571683 未加载
BSousa大约 11 年前
If he is serious of continuing developing software for many years and not just jump ship because the pay is good now, learning the basics of CS is my recommendation. There are a few coursera courses on intro to CS (I think using Python) that will be very valuable. Learning about how a computer works, how algorithms work, etc are very valuable (I&#x27;m not saying to know the exact O notation of 50 sorting algorithms, but the general idea of how they work)<p>If he just wants to make more money but doesn&#x27;t care much about programming&#x2F;developing software, just tell him to go to one of those Rails&#x2F;iOS&#x2F;etc bootcamps for a month or two.
评论 #7566445 未加载
评论 #7565935 未加载
ufmace大约 11 年前
Short version - build something that you want to build. Something that makes your live easier, or helps people you know. Platform and language aren&#x27;t as important as taking a project to completion.<p>If you have any aptitude for this business at all, you ought to be able to pick up any language and API in a couple of weeks work, once you know your stuff. What&#x27;s hard is having the discipline to get through the sloggy parts - fixing tricky bugs, adding features to your thing until it&#x27;s actually useful. That&#x27;s why it&#x27;s best to start on building something that you can personally use. You&#x27;ll have the motivation to finish that&#x27;s hard to keep when you&#x27;re learning something you have no use for.<p>If your current career involves doing anything on a computer that can be repetitive, start by automating that. Build a website or an app that does something you need. Keep working - keep adding features to whatever you build, as long as it makes sense.<p>If I&#x27;m doing the interview, I&#x27;d much rather hear about how you solved a real-world problem with your skills than how you spent X years learning Ruby or Java or Objective-C.
markbnj大约 11 年前
Sure, he can become a software developer if that&#x27;s what he&#x27;d rather be doing. It&#x27;s still (largely) a business where demonstrated skill outweighs paper testimonials of brilliance. If he actually likes programming then encourage him for sure. If he just wants to get into it because he doesn&#x27;t like what he&#x27;s doing now, then something else would be a better fit. Anything else, really.
christopherslee大约 11 年前
Agreed with the above comment about having a passion for it.<p>Build stuff, a lot of stuff. Most of it will be bad, but it will start to get better, AND you will start to develop speed in the form of mental patterns for getting things done. Some of those patterns will eventually change as your mentality shifts from &quot;just getting things done&quot; to &quot;getting things done well&quot; to other concerns. Software is largely a set of tradeoffs.<p>I think getting things done is understated because it also means learning to deal with ambiguity in features&#x2F;ideas&#x2F;specifications&#x2F;product. This can cause paralysis for some.
评论 #7566893 未加载
msg大约 11 年前
The dirty secret of software is scalability. Scalability to big O, big O to algorithms, algorithms to computer science. How do you like me now.<p>You don&#x27;t want to use the right software language or framework with the wrong approach. You want to be able to reason clearly about the core problem and understand the tradeoffs of different classic solutions. Or invent a brand new approach. Or invent a framework or invent a language if necessary.<p>Consider this a plug for at least undergrad level education in CS. You can learn most of the rest of it on the job, but not computational thinking.
评论 #7567101 未加载
评论 #7567690 未加载
tcfunk大约 11 年前
To me, one of the most important things to learn in web development is to learn about the HTTP protocol.<p>This may sound boring and tedious, but if you don&#x27;t know how GET, POST, PUT, DELETE etc. work then it won&#x27;t do you any good trying to wrap your head around frameworks.<p>Learn some of the common responses and what they mean and are typically used for (200 is ok, 302 is a redirect, etc).<p>REST-style frameworks are just abstractions on this protocol, and a good understanding of it will help to make sense of why web dev frameworks are built the way they are.
Dirlewanger大约 11 年前
Going to be contingent on where he&#x27;s located. A rough way to start: Take a look at job openings in his area, see what are the desired technologies, and have him learn them as quick as he can. He&#x27;s going to be in a junior role, there&#x27;s no way around it, but if he takes the hard angle of being unsatisfied with his current career, and can demonstrate he&#x27;s serious with this pivot by showing off something quick he&#x27;s built with his newfound powers, then getting a job should be no problem.
burritofanatic大约 11 年前
I did this while I was a QA guy who was transitioning out of law in my late twenties. Progressively working through the web stack is good for learning, but I&#x27;ve found myself most employable as a new guy doing iOS. It took about a year.<p>Let people say what they want about Xcode and Objective-C, but I prefer it over working with Javascript and one of 50 frameworks.
molsongolden大约 11 年前
In a similar situation but I&#x27;ve used HTML&#x2F;CSS extensively in the past with some PHP experience. My plan is to take some time off this summer and study Python full-time while working to build an idea. Hopefully that will get the ball rolling and I&#x27;ll figure out what to do from there.
lmm大约 11 年前
I&#x27;d start on iOS just because I think it&#x27;s more likely to inspire good programming habits, and the choice of tools&#x2F;frameworks is relatively straightforward. Move on to the web once he&#x27;s got a bit more of an idea of the basics and can navigate the landscape a bit better.
fsk大约 11 年前
That is the argument AGAINST being a software engineer. If you specialize in the wrong technology that goes out of favor, the market value of your experience goes to $0. It&#x27;s very hard to guess what will be popular 5-10 years from now. If you pick wrong, you&#x27;ll be stuck.
评论 #7566673 未加载
评论 #7566964 未加载
mattdeboard大约 11 年前
I wrote this about 2.5 years ago after I career changed myself<p><a href="http://mattdeboard.net/2011/11/23/how-i-became-a-programmer/" rel="nofollow">http:&#x2F;&#x2F;mattdeboard.net&#x2F;2011&#x2F;11&#x2F;23&#x2F;how-i-became-a-programmer&#x2F;</a><p>There are a couple other entries there about this general topic.
评论 #7571686 未加载
techhackblob大约 11 年前
Where is he located? If it&#x27;s the USA, especially Silicon Valley, then it&#x27;s too late as he&#x27;s too old. From what I read and comments from likes of Mark Zuckerberg the illegal practice of age discrimination is rampant. If he&#x27;s willing to learn .NET and move to Ireland then all is well as once he gets good experience older developers with technical ability are in big demand. As a 43 yr old .NET programmer said to me the other day (as we watched Ireland beat France in the Rugby) &quot;We are the most employable people in this pub and I&#x27;ve never been in more demand in my life&quot;.
评论 #7566419 未加载
评论 #7567287 未加载
评论 #7566416 未加载
karishmasibal大约 11 年前
Learning language is not a big skill but having good logic is. So I will say concentrate on logic and language you can learn anytime.
ThePhysicist大约 11 年前
<a href="http://www.hackerschool.com" rel="nofollow">http:&#x2F;&#x2F;www.hackerschool.com</a>
rosem大约 11 年前
drop everything, focus on only on iOS (or android).