热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

闲话程序员求职要求

2016年8月29日当初想的太简单~~~哎写在前面从3月份开始各大互联网类、游戏类、软件类等公司开始招暑期实习,9月份正式招聘,面临众多的工作选择和技术方向,我们不免有些眼花缭乱啊

2016年8月29日  当初想的太简单~~~ 哎


写在前面

从3月份开始各大互联网类、游戏类、软件类等公司开始招暑期实习,9月份正式招聘,面临众多的工作选择和技术方向,我们不免有些眼花缭乱啊,在我们选择和准备应聘之前,应该理性分析下,有哪些技术方向,工作岗位,这些岗位的要求如何。 (ps:当然这些,只是作为应届生求职者的一些浅薄看法,毕竟现在没有行业的经验,也没有练得倚天屠龙之技,找工作只靠本身的编程技能。仅供分享,欢迎留言交流)
关于程序员 相信大部分计算机相关专业的学生(无论是研究生还是本科),毕业后第一份工作都是传说中的程序员,或者叫软件工程师之类,因此在这里,重点说下程序员相关职位吧,毕竟目前来看,我也是重点准备该方向的就业的。程序员只是个很笼统的概念,由于专业化分工和编程技术商业化竞争的激烈,程序员被分成“各大门派“,这些门派既可以从编程语言上面划分,也可以从从事的业务领域方向划分,或者技术领域划分。
从编程语言看程序员——你是哪一派 只要你是程序员,你打算以后从事编程工作,你就必须至少精通一种编程语言,这门语言就是你的工具,业务上一些需求、你的想法和你的技术水平都是由这门工具实现的。主流的编程语言分为以下几个门派,之所以说以下的语言是主流,主要是因为它们不仅仅是一门语言,它们是一个平台,拥有强大的编程库,成熟的业务解决方案,稳定的版本支持,当然它们的程序员门徒也是众多的。 因此符合的有Java,NET(C#),C/C++, PHP四种,四种语言各有侧重,Java和PHP主要专攻Web领域开发(B/S架构的),C/C++主要是客户端软件和服务器类软件开发,NET(C#)面向客户端和WEB开发皆可,唯一的不足是不能跨平台和开源免费。以下表1,主要是对这些语言本身需要掌握的技术要求和就业方向,简短的归纳下。排名不分先后: 编程语言技术要求表格
表1    编程语言技术要求简单分析 从中可以看出,语言本身语法或许各有千秋,互有长短,但是由于语言设计理念和面向的问题不一样,导致实际生产中,语言解决的问题有很大的不同,基本上一门语言都只负责某一方向的开发,没有出现一门语言一统天下的情况,因此很多时候,为了解决复杂问题,掌握和学习多种语言,是必须的,这样才能更好利用它们各自擅长的解决方案,优雅地低成本地完成我们的工作。 其实自己平时由于好奇,上述语言都至少看过一些书,写过一些Hello World之类的代码,(当然水平也很菜),不过这里的观点不涉及好与坏,只是种想法和分析,仅供参考,个人感觉学习Java、PHP、NET这三类语言时,主要是学习它们总结的API库的使用和所谓的设计实现,用这三类语言实现B/S系统时,主要关注于需求之类,用户界面之类,可能以后要关注如何解决大并发访问量之类的通用难题(当然前提是你能够有这么大的用户量,一般只有热门的互联网服务才有),而学习C/C++,除了学习语言本身之外,还要去看操作系统之类的东西,这样才能做出应用。从时间上来看,C/C++的确上手比较慢,而且平时学校里用到的机会不多。 此外,如果你是做面向用户的产品,那么你花在用户界面,需求,美工之类的时间会很多,做客户端之类软件(包括Web界面和PC界面)就属于面向用户的,偏前端的,接触的东西非常的广,但很容易不够深入,且技术更新快;如果你是做面向程序员的(例如设计一套API,设计云存储之类),面向业务后台请求的(请求调度,负载均衡,Web服务器),那么你会专攻Linux操作系统,网络编程,协议,算法之类的技术,这些技术是计算机专业的基础,比较容易深入,但是远离了用户直接产品需求。
从工作岗位看程序员——你想做什么 或许你发现上面单纯从语言上分,好像没有你想要的工作,或者你没有被很好的归类,那么下面我就挑选国内一些典型公司的招聘要求作为分析,相信会有你想做的工作或者你擅长的。不过我相信,上面四种语言你肯定熟练了其中的一种,如果你是标准程序员的话。 以下只是根据语言对程序员职位进行了划分,当然你进入企业以后,分到不同部门负责不同产品,又会对该语言平台的技术方向有偏重,同时也会接触更多业务,所谓业务,就是用户产品需求相关或者产业方向相关的,由于职业众多,这里面忽略了测试,运维,产品等非纯开发岗位。 岗位No.1         工作岗位关键词:Java软件工程师,Java研发工程师         特点:大量招聘,各种公司(银行,互联网公司)通吃,算得上万金油         技术要求:Java,JSP,Servlet,SSH,Tomcat之类服务器,Mysql之类数据库,多线程和并发编程         国内某个公司招聘要求:         1. 精通Internet基本协议(如TCP/IP、HTTP、SMTP、FTP等)内容及相关应用;         2. 较强的编程能力,能够完成较复杂的交互流程设计和实现;         3. 精通某种网页设计语言,使用JSP或者Servlet者优先考虑;         4. 熟悉MVC,J2EE等应用模型中至少一种;         5. 熟悉Javascript、HTML 编码;         6. 熟悉Tomcat,Resin,JBoss等应用服务器中至少一种的配置与使用;         7. 熟悉UNIX/Linux 的基本命令操作,有AJAX,Flash,Spring,Struts等开发经验者优先考虑;         8. 熟练掌握RDBMS原理及SQL语言,熟悉基于数据库应用的结构设计,性能优化;         9. 计算机软件或相关专业;         10.工作认真,细心,有条理;积极性高,求知欲强;具有较强的沟通能力及团队合作精神。
岗位No.2         工作岗位关键词:Net开发工程师,C#开发工程师         特点:互联网公司招的少(BAT之类的),中小型软件企业、微软等大软件公司、国企和事业单位有相关的职位         技术要求:C#,Asp.net,WinForm,WCF,SQL Server,Web Service,Ajax         国内某个公司招聘要求:         1. 熟悉winFrom开发,精通socket,TCP/IP协议的开发,熟悉WebService技术         2. 熟悉.Net Web程序开发基础,熟悉windows环境下客户端程序的开发特点;          3. 精通.NET,C#,ASP,SQL,VB,XML等开发语言,熟悉B/S结构程序的开发流程;         4. 熟悉HTML,DHTML、Javascript、Xml、JQuery,有两个以上ASP.net项目开发经验;         5. 熟悉基于.Net的C/S结构程序开发者优先;         6. 有大型网站开发经验者优先,有C++经验优先;         7. 熟悉移动程序终端应用程序开发者优先;         8. 有二维码相关开发经验优先;         9. 请提供相关开发产品演示。
岗位No.3         工作岗位关键词:C/C++开发工程师,后台开发工程师,Windows客户端开发,Linux服务器开发工程师         技术要求:C/C++,STL,Windows编程,Linux编程,开发工具使用,MFC,QT,数据结构与算法,Socket网络编程         特点:高大上的感觉,职位相对较少,要求较高,本身学习周期长,关键是学校里接触的少(大家主要是接触基础Web编程较多)         国内某个公司招聘要求:         1.有相关C、C++程序语言项目开发经验;         2.熟悉网络编程;具备基本的gdb调试能力,了解内存泄漏,越界读写等常见问 题;         3.良好的服务器端编程能力和编程习惯,能完成相关设计、实现文档编写;         4.掌握多线程并发编程技术;熟练掌握各种数据结构和算法;         5.熟悉windows/linux编程环境;         6.有MySQL开发经验者优先考虑。
岗位No.4         工作岗位关键词:PHP开发工程师,高级开发工程师         特点:主要是Web开发,用于类似主页,微博,社交网站之类互联网产品开发         要求见以下招聘要求:         1. 精通PHP面向对象的设计方法,理解MVC模式及SOA思想并能运用在开发中;         2. 精通PHP语言,并至少使用PHP开发过一个以上大中型项目,能够独立编写中等规模PHP应用程序;         3. 熟悉Javascript,熟练掌握XHTML、CSS、DIV,JQUERY等页面技术,熟练掌握Mysql数据库应用开发;         4. 能熟练使用Linux,拥有查询优化和存储优化经验以及PHP缓存技术者优先;         5. 责任心强,具有良好的沟通、协作能力和团队合作意识,能够承担重要任务承受较强工作压力。
岗位No.5          工作岗位关键词:移动终端开发工程师,Android开发工程师(Java),IOS开发工程师(Object C),WP开发工程师(C#)         特点:苹果开创了这一类职业的繁荣,非常火热,各大公司也都有需求         技术要求:熟悉三大移动操作系统编程框架,编写APP         国内某公司的招聘要求:(考虑国情,主要是Android的)         1. 两年及以上手机应用实际开发经验,至少参加过一个完整的商业级手机应用或游戏开发项目,一年以上Android平台开发经验优先考虑;        2. 熟悉Android OS系统体系结构、framework、以及底层库;          3. 熟悉Android下联系人、电话、信息、数据库等常见应用实现机制;          4. 熟悉Android下网络通信机制,对Socket通信、TCP/IP和http/https有较深刻的理解和经验;          5. 熟悉Android平台UI设计,熟悉常用布局;         6. 理解面向对象设计的基本原则,熟悉常用的设计模式;  
岗位No.6         工作岗位关键词:算法工程师  数据挖掘工程师  Hadoop工程师         技术要求:编程语言(Python之类即可),机器学习,数据挖掘,信息检索,大数据处理         特点:该方向相对程序员已经很深,部分已经进入研究级别,不过绝大部分应该是应用算法和工具,学习周期较长         国内某个公司的要求(这是偏程序员方向的,研究性质的岗位往往要求是博士,要有论文发表要求):         1. 精通类Linux平台下的C/C++语言开发,熟练使用gcc、gdb、Makefile等开发工具。了解STL更佳;        2. 至少掌握Perl / Python / Linux Shell中的一种;         3. 深刻理解各种常用数据结构和算法,能根据具体情况灵活应用;         4. 具备机器学习 / 自然语言处理 / 数据挖掘其中一种的研究和项目经验者优先,具有经济学背景优先;         5. 有较强的分析和解决问题能力,有持续自我学习的能力和意愿, 善于沟通和逻辑表达,良好的团队合作意识。

从知识架构看程序员——你需要准备什么 一份好的工作——薪水不错,公司不错,前景不错,必然要面临竞争的压力,那么如何准备,这里主要根据上面的岗位要求,构造属于自己的知识架构图。 首先计算专业基础:数据结构、常用算法、操作系统、数据库原理、计算机网络、计算机组成(硬件基础与单片机)、数学(概率论) 然后是语言方向:C/C++,PHP,NET,Java,选择其中的一种,精通,请注意熟悉的是整个语言平台,而不仅仅是语言本身的语法 最后是领域方向:Web开发,客户端开发,服务器开发,移动终端开发,研究领域方向(搜索,数据挖掘之类,这个没有画出来)。 以下图1,简单表示了需要准备哪些知识。 知识结构图
图1 知识结构 结束语 以上主要是自己找实习工作时,对自己的一些分析,现在写出来做个总结,当然也是参考了很多经验帖。找工作其实也不一定局限于编程,计算机专业从业选择是很多的,但是你如果想要找到一份合适的工作,应该提早准备,准备无外乎根据自己的情况(根据自己的情况,是指现在你已经会了哪门语言或是现在项目中需要用哪门语言,不建议从头学习一门,没必要),选择一门语言方向,然后在这个方向进行深入,为以后工作和发展做好准备。自然,之前,没有强调基础的重要性,其实科班的优势就在于那些专业基础,所以,我们每个人都必须掌握那些,你找工作时牛不牛,offer拿的多不多就在于基础牢不牢靠,当然工作以后你牛不牛,就看你产品和业务发展啦,自然是后话。
转载请附上本页链接:来自CSDN博客——MePlusPlus(Me++)的专栏 (http://blog.csdn.net/meplusplus)
欢迎留言交流。






推荐阅读
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • Python 领跑!2019年2月编程语言排名更新
    根据最新的编程语言流行指数(PYPL)排行榜,Python 在2019年2月的份额达到了26.42%,稳坐榜首位置。 ... [详细]
  • 提升工作效率:掌握15个键盘快捷键
    在日常工作中,熟练掌握计算机操作技巧能够显著提升工作效率。本文将介绍15个常用的键盘快捷键,帮助用户更加高效地完成工作任务。 ... [详细]
  • 关于进程的复习:#管道#数据的共享Managerdictlist#进程池#cpu个数1#retmap(func,iterable)#异步自带close和join#所有 ... [详细]
  • 本文讲述了一位80后的普通男性程序员,尽管没有高学历,但通过不断的努力和学习,在IT行业中逐渐找到了自己的位置。从最初的仓库管理员到现在的多技能开发者,他的职业生涯充满了挑战与机遇。 ... [详细]
  • JavaScript 跨域解决方案详解
    本文详细介绍了JavaScript在不同域之间进行数据传输或通信的技术,包括使用JSONP、修改document.domain、利用window.name以及HTML5的postMessage方法等跨域解决方案。 ... [详细]
  • JavaScript 页面卸载事件详解 (onunload)
    当用户从页面离开时(如关闭页面或刷新页面),会触发 onunload 事件,此时可以执行预设的脚本。需要注意的是,不同的浏览器对 onunload 事件的支持程度可能有所不同。 ... [详细]
  • MITM(中间人攻击)原理及防范初探(二)
    上一篇文章MITM(中间人攻击)原理及防范初探(一)给大家介绍了利用ettercap进行arp欺骗及劫持明文口令,后来我发现好友rootoorotor的文章介绍比我写的更透彻,所以基础利用大家可以参看 ... [详细]
  • 本文探讨了如何利用RxJS库在AngularJS应用中实现对用户单击和拖动操作的精确区分,特别是在调整区域大小的场景下。 ... [详细]
  • 探讨如何在映射文件中处理重复的属性字段,以避免数据操作时出现错误。 ... [详细]
  • 在测试软件或进行系统维护时,有时会遇到电脑蓝屏的情况,即便使用了沙盒环境也无法完全避免。本文将详细介绍常见的蓝屏错误代码及其解决方案,帮助用户快速定位并解决问题。 ... [详细]
  • 本文详细介绍了如何使用Heartbeat构建一个高可用性的Apache集群,包括安装、配置和测试步骤。 ... [详细]
  • 本文总结了近年来在实际项目中使用消息中间件的经验和常见问题,旨在为Java初学者和中级开发者提供实用的参考。文章详细介绍了消息中间件在分布式系统中的作用,以及如何通过消息中间件实现高可用性和可扩展性。 ... [详细]
  • 本文将详细探讨PHP中C的作用,并对比其他编程语言如Java和C的特点及其适用场景。 ... [详细]
author-avatar
手机用户2502898335
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有