道路工程结构计算软件
This story is for all the developers out there who are growing in their career and for all the students out there who think all they have to do is Machine Learning to get a decent job.
这个故事适用于所有职业发展中的开发人员,以及所有认为自己需要做的就是借助机器学习来获得体面工作的所有学生。
- We will be covering the most popular career paths around Software Development. 我们将介绍有关软件开发的最受欢迎的职业道路。
- None of them is superior to the other. 他们都不比其他人优越。
- You can pick whatever excites you. 您可以选择任何刺激的事物。
- There are a lot of management and business positions that you can move into from a lot of these careers but that is beyond the scope of today’s story. 在许多这些职业中,您都可以从事很多管理和业务工作,但这已经超出了今天的范围。
- The order of the list means nothing. 列表的顺序没有任何意义。
- The ‘barrier for entry’ means the number of efforts it will take you to get into that role combined with preferred experience that companies look for in those roles. “进入壁垒”是指您将需要付出多少努力才能与公司在这些职位上寻求的优先经验相结合。
Web前端工程师 (Web Frontend Engineer)
You can pick up HTML, CSS, JS and then move towards front end framework like React, Angular and VueJS to start off building the front end applications. Frontend doesn’t require you to learn much about the Computer Science theoretical topics and you can do fairly well even without investing your time into Data Structures and Algorithms.
您可以选择HTML,CSS,JS,然后转向诸如React,Angular和VueJS之类的前端框架开始构建前端应用程序。 Frontend不需要您学习很多有关计算机科学的理论主题,即使您不花时间在数据结构和算法上,您也可以做得很好。
This is also a great role to get into if you have no prior programming experience and want to enter the tech industry.
如果您没有任何编程经验并且想进入技术行业,那么这也是一个很好的角色。
Web后端工程师 (Web Backend Engineer)
Many of students learn Java, C, Python in their college which makes them eligible for backend web engineer job which is easy to get as well, as there are a lot of companies always looking for someone to work on their backend as they are starting out/growing their backend.
许多学生在他们的大学学习Java,C,Python,这使他们有资格获得后端Web工程师的工作,这也很容易获得,因为许多公司在刚开始时总是在寻找可以在后端工作的人/种植他们的后端。
This is a great role to start your career in as you will get to learn about the new backend technologies, APIs, Databases, Security, Networking protocols, System Design, Scalability, Cost Efficiency, Cloud Services etc which is really a great stepping stone to move forward in your career.
这是开始您的职业的重要角色,因为您将了解新的后端技术,API,数据库,安全性,网络协议,系统设计,可伸缩性,成本效益,云服务等,这确实是迈向成功的重要垫脚石。在您的事业中前进。
If you already have the skills for a web backend engineer and then you are investing your time into learning game development/graphics development then you are sort of wasting your time until or unless you are looking forward to making a shift towards those fields.
如果您已经具备了Web后端工程师的技能,然后将您的时间投入到学习游戏开发/图形开发中,那么您就浪费了时间,直到或除非您希望转向这些领域。
Hence, invest time into more focused learning backend technologies like Java, C#, NodeJS, Python along with building web backend mini-projects which will be a great thing to put on your resume rather than just some stupid certifications.
因此,将时间投入到更加专注的学习后端技术(如Java,C#,NodeJS,Python)以及构建Web后端微型项目中来,这将是一件很棒的事情,而不是仅仅获得一些愚蠢的认证就可以放在简历中。
全栈Web工程师 (Full Stack Web Engineer)
This role covers both of the above roles and is great for programmers with an entrepreneurial mindset where they can set up the whole project all by their own.
该角色涵盖了以上两个角色,对于具有创业思维的程序员非常有用,他们可以自己设置整个项目。
It’s an excellent goal to have for many existing developers and there are a lot of startups looking for full-stack developers as they might have limited resources.
对于许多现有的开发人员来说,这是一个绝妙的目标,并且许多初创公司正在寻找全栈开发人员,因为他们可能资源有限。
Great for people who already have experience in either front end or backend and are learning the counterparts to become a full-stack engineer.
非常适合已经在前端或后端都有经验并正在学习同行以成为全栈工程师的人们。
移动工程师 (Mobile Engineer)
Mobile is big and hence so is the number of mobile engineers in the industry. This is also an excellent entry point if you want to enter tech. There are two major platforms — Android and iOS.
移动设备很大,因此行业中的移动工程师人数也是如此。 如果您想进入技术领域,这也是一个很好的切入点。 有两个主要平台-Android和iOS。
To get started with Android you need to Java/Kotlin and for iOS its Objective-C/Swift. As you can see a pretty clean career to learn and start with.
要开始使用Android,您需要使用Java / Kotlin,对于iOS,则需要使用Objective-C / Swift。 如您所见,您可以轻松学习并开始工作。
Now there are popular frameworks out there like Flutter and React Native which helps developers build both Android and iOS apps with a single codebase, but it will always pay off if you know at least native Android or iOS before you jump into Cross-platform app development.
现在有流行的框架,例如Flutter和React Native,可以帮助开发人员使用单个代码库构建Android和iOS应用程序,但是如果您至少了解本机Android或iOS,那么在跳入跨平台应用程序开发之前,它总是会有所回报的。
This is also a great field for people who are entrepreneurial as you can build apps as per your ideas using backend services like Firebase and AWS.
对于有创业精神的人来说,这也是一个很好的领域,因为您可以使用Firebase和AWS等后端服务根据您的想法构建应用程序。
游戏/图形开发 (Game/Graphics Development)
A lot of people are inspired by playing computer games and want to build their own games can become game developers.
很多人都受到玩计算机游戏的启发,并且希望自己制作游戏可以成为游戏开发人员。
The game dev industry might not be as rewarding and fulfilling as because of high competition and sometimes games don’t last very long either.
游戏开发行业可能不会像由于激烈的竞争那样获得回报和充实,有时游戏也不会持续很长时间。
A lot of Silicon Valley companies are not into this industry hence only if you are very serious about this field, you can do very well, else you are better off investing your time around Software engineering.
许多硅谷公司都不属于这个行业,因此,只有当您认真地对待这一领域时,您才能做得很好,否则,您最好将时间花在软件工程上。
The most popular and essential language to get into gaming is C++ and knowledge about Game Engines, Game physics, Shaders, GPUs etc.
进入游戏最流行且必不可少的语言是C ++,以及有关游戏引擎,游戏物理,着色器,GPU等的知识。
As Augmented/Virtual Reality is gaining popularity, this is a pretty good time to get into this field as well. This is definitely something the big silicon valley players like Apple, Google, Facebook are into.
随着增强/虚拟现实的流行,这也是进入该领域的一个不错的时机。 无疑,这是像苹果,谷歌,Facebook这样的硅谷大公司都参与的事情。
数据工程 (Data Engineering)
Data is more precious than Oil today and that is one of the big reasons why all the companies are investing their skills and resources into collecting data from their applications as it helps them make better business decisions.
如今,数据比石油更宝贵,这就是所有公司都将其技能和资源投入到从应用程序收集数据的主要原因之一,因为它可以帮助他们做出更好的业务决策。
All the huge amounts of data which is being logged by their applications might not be exactly in the form where the business analysts can draw insights from.
他们的应用程序正在记录的所有大量数据可能并不完全以业务分析师可以从中获取见解的形式存在。
This is where data engineering comes in and helps the organization clean the data, process it and draw valuable insights out of it. Data engineers write automated scripts in Python (popularly), SQL queries to do it.
这是数据工程的用武之地,它可以帮助组织清理数据,处理数据并从中汲取宝贵的见解。 数据工程师使用Python(通常)和SQL查询编写自动化脚本来执行此操作。
Once you have a good understanding and experience in Data engineering it makes so much sense for you to learn and grow towards machine learning.
一旦您对数据工程有了很好的理解和经验,对您而言,学习和朝着机器学习的方向发展就变得非常有意义。
机器学习 (Machine Learning)
It’s not an entry-level thing to do without prior knowledge of technology industry, you can still do it but you might not be as effective and as valuable to big companies while startups with limited resources can hire you at a much lower salary than industry standard that you deserve.
如果没有先验技术行业的知识,这不是入门级的事情,您仍然可以做到,但是对于资源有限的初创公司而言,您的工作效率和价值对大公司而言可能不那么大,而其价值却远低于行业标准。你应得的。
If you ask most of the college students today, 90% of them will say they want to/are studying machine learning. But the thing is:
如果您今天问大多数的大学生,其中90%的人会说他们想/正在学习机器学习。 但问题是:
We don’t need 90% Machine Learning engineers in the industry.
我们不需要业内90%的机器学习工程师。
值得一提 (Worthy Mentions)
There are other developer roles like Blockchain, IoT, Self Driving car devs which are not as popular as the above roles but definitely not something you should ignore either.
还有其他开发人员角色,例如区块链,物联网,自动驾驶汽车开发人员,不如上述角色那么受欢迎, 但绝对也不是您不应忽略的事情 。
Then there are roles in the Software Engineering Industry but are not exactly ‘Software Engineering’ like QA, DevOps. These roles are definitely valuable and no company can survive without them, but they aren’t actively around building Softwares that’s why I haven’t covered them here.
然后,在软件工程行业中有一些角色,但并不完全像QA,DevOps这样的“软件工程”。 这些角色绝对是有价值的,没有它们,任何公司都无法生存,但是它们并没有积极地构建软件,这就是为什么我在这里不介绍它们。
您可以在哪里做什么? (What you can do from where you are?)
Just take a look at the job roles today that you want to get into 2 years from now, 5 years from now and make sure you are progressing to become a good fit for these roles as when your time comes in the future.
只需看一下您现在想进入现在的2年,现在变成5年的今天的工作角色,并确保随着将来的到来,您正在逐步适应这些角色。
翻译自: https://medium.com/swlh/career-paths-in-software-engineering-d205f59d35c2
道路工程结构计算软件