热门标签 | 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)
欢迎留言交流。






推荐阅读
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 面试经验分享:华为面试四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试
    最近有朋友去华为面试,面试经历包括四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试。80%的人都在第一轮电话面试中失败,因为缺乏基础知识。面试问题涉及 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 解决VS写C#项目导入MySQL数据源报错“You have a usable connection already”问题的正确方法
    本文介绍了在VS写C#项目导入MySQL数据源时出现报错“You have a usable connection already”的问题,并给出了正确的解决方法。详细描述了问题的出现情况和报错信息,并提供了解决该问题的步骤和注意事项。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • Unity3D引擎的体系结构和功能详解
    本文详细介绍了Unity3D引擎的体系结构和功能。Unity3D是一个屡获殊荣的工具,用于创建交互式3D应用程序。它由游戏引擎和编辑器组成,支持C#、Boo和JavaScript脚本编程。该引擎涵盖了声音、图形、物理和网络功能等主题。Unity编辑器具有多语言脚本编辑器和预制装配系统等特点。本文还介绍了Unity的许可证情况。Unity基本功能有限的免费,适用于PC、MAC和Web开发。其他平台或完整的功能集需要购买许可证。 ... [详细]
  • PHP函数实现分页含文本分页和数字分页【PHP】
    后端开发|php教程PHP,分页后端开发-php教程最近,在项目中要用到分页。分页功能是经常使用的一个功能,所以,对其以函数形式进行了封装。影视网源码带充值系统,vscode配置根 ... [详细]
  • 导出功能protectedvoidbtnExport(objectsender,EventArgse){用来打开下载窗口stringfileName中 ... [详细]
  • 本文是关于C#类型系统、值类型和引用类型的概念性笔记。介绍了C#1系统类型的三个特性,静态类型的含义,显式类型和隐式类型的区别。还讨论了类、结构、数组类型、枚举、委托类型和接口类型属于哪一种类型。同时纠正了关于结构、引用类型和对象传递的错误表述。最后提到了C#4中使用动态类型的关键字。 ... [详细]
  • 在C#中,使用关键字abstract来定义抽象类和抽象方法。抽象类是一种不能被实例化的类,它只提供部分实现,但可以被其他类继承并创建实例。抽象类可以用于类、方法、属性、索引器和事件。在一个类声明中使用abstract表示该类倾向于作为其他类的基类成员被标识为抽象,或者被包含在一个抽象类中,必须由其派生类实现。本文介绍了C#中抽象类和抽象方法的基础知识,并提供了一个示例代码。 ... [详细]
  • 在IDEA中运行CAS服务器的配置方法
    本文介绍了在IDEA中运行CAS服务器的配置方法,包括下载CAS模板Overlay Template、解压并添加项目、配置tomcat、运行CAS服务器等步骤。通过本文的指导,读者可以轻松在IDEA中进行CAS服务器的运行和配置。 ... [详细]
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社区 版权所有