IT人才市场最看重的12项技能

IT行业很热门,不过前提是你要有所需的技能。如果你想进入这个行业,不妨看看在不久的将来最热门的几项IT技能。

Kevin Scott是谷歌公司的高级技术经理,也是美国计算机协会专业与教育委

员会的创始成员,他说:“我在硅谷看到的一切与认为程序员行将消失、其工作外包出去的观点完全相反。从大企业到新兴公司,许多公司都在积极招聘。”

许多招聘 人员认为,现在有更多的空位可供求职者挑选。据美国密尔沃基马奎特大学的IT副教授Kate Kaiser认为,IT人才市场很热门,不过前提是你要有所需的技能。

1机器学习

Scott说,随着许多公司努力开发需要在庞大的数据集中查找数据的 软件, 譬如协作式过滤、垃圾邮件过滤和欺诈检测等软件,一些观察人士发现,市场对以下这些人才的需求在迅速上升:具有机器学习知识,或者能够设计及开发可提升计 算机性能的算法和技术。不单单对谷歌而言是这样。有许多应用软件包含非常庞大的数据集,这就带来了一个根本问题,即如何组织数据并提供给用户。

对这种应用软件的需求进一步扩大了对数据挖掘、统计建模和数据结构等其他技能的需求。其中一些问题不是轻松就能解决的——选择的数据结构或者算法之间的细微差异就会决定你得到的是不是合理的解决方案。

2把应用软件搬到移动设备上

Sean Ebner是美国佛罗里达州的 招聘公司Spherion Pacific Enterprises负责专业服务的副总裁,他说,人们竞相在移动设备上提供内容的势头就像互联网在上世纪90年代的疯狂时期。而随着黑莓和Treo等 设备成为日益重要的一种商业工具,很多公司都需要擅长把ERP、采购和费用审批等应用软件扩展到这些设备上的人才。他说:“许多公司需要有人能把应用软件 推广到移动设备上。”

3无线网络

美国计算机技术行业协会负责技能开发的副总裁Neill Hopkins说,随着Wi-Fi、WiMax和蓝牙这些事实上的无线标准迅速流行起来,对物色技术人才的雇主们而言,保护无线传输 安全也就成了头等大事。他说:“许多无线技术已经被大家所接受,因而相当多的公司关注它们如何协同工作、又存在哪些安全风险,这些风险与有线网络相比要大得多。”

Howard Schmidt是美国信息系统安全协会的会长,也是eBay公司前任首席信息安全官兼首席安全战略师,他同意上述观点。他说:“要是让我来招聘无线技术专家,我也希望对方了解无线技术对安全带来的影响,一开始就加入控制措施。”

4人机交互与界面设计

需求不断看涨的另一个方面是人机交互和用户界面设计,也就是为Web或者桌面应用软件设计用户界面。Scott说:“现在更多的人认识到,工程师再也不能 匆匆拼凑出蹩脚的界面了。”由于苹果等公司的存在,所以消费者看到越来越多设计精良的产品,所以,为什么就不能要求所用的软件也这样呢?

5项目管理

总部设在美国堪萨斯城的Intronic Solutions公司的总经理Grant Gordon说:项目经理一直供不应求,由于现在人们越来越无法容忍预算超支或者失败的项目,所以能够证明自己才能的人非常吃香。他说:“现在需要的是有 真才实学的项目经理,而不只是挂着这一头衔的人。雇主需要的是懂得监管、了解项目的生命周期、真正会管理项目的人。”

这与一年前相比大不相同,当时很容易谋得项目经理职位。而现在,由于雇主要求具有实际经验,所以面试过程变得严多了。合适的应聘者凤毛麟角,而这些人可以对工资和津贴提出较挑剔的要求。

Gordon筛选应聘者的方式就是,让内部的主题专家(subject-matter expert)组织面试,了解应聘者在过去是如何处理各种情况的,譬如怎样消除团队冲突或者解决问题。“简单机械地复述原理很容易,但开始说到冲突管理等 方面,你会开始发现他们是不是知道自己在做什么。”Gordon说。

Gordon有一次让一名应聘者描述他会如何通过改变高尔夫球表面的浅凹来设计出飞得更远的球。Gordon说:“可以肯定,谁也答不上这样的问题,不过可以从中看出对方的反应有多快、如何把难以理解的问题分成几个比较小的部分。”

6一般的网络技能

现如今,不管在哪里从事IT工作,都再也无法回避网络,因而,像软件工程师这些非网络专业人士也有必要对网络概念有一些基本的了解。他们最

起码要了解网络的基本知识,如TCP/IP、以太网和光纤,另外还要了解分布式计算和网络计算,并足以应付有关工作。

Scott说:“对于编写那些需要部署到数据中心的应用软件的开发者来说,现在非常需要他们认识到应用软件如何使用网络。他们需要了解自己设计的程序如何 充分利用网络。”譬如说,为了在多台计算机之间划分三层应用软件,开发人员就要知道如何构建及协调这个网络。知道分布式系统基本原理的人非常吃香。

7网络融合技术

据Hopkins介绍,随着更多的公司实施IP语音传输(VoIP),市场日益需要那些了解局域网、广域网、语音网络和互联网等各种网络,并且了解它们如何融合到一起的 网络管理员

8开源程序设计

现在,对招聘开源人才有兴趣的雇主比过去多了。Ebner说:“有些人曾经认为,开源日薄西山,不过现在它又卷土重来了,无论是在操作系统层面,还是应用开发方面。”在Linux、Apache、MySQL和PHP (统称为LAMP)方面有经验的人会发现自己非常紧俏。

9商业智能系统

现在,商业智能方面的发展势头也越来越迅猛,因而也越来越迫切地需要那些在Cognos、Business Objects和Hyperion等商业智能技术方面具有技能,还懂得把这些技术运用到公司业务上的人员。

Ebner说:“客户在商业智能方面作了大量投入,但是他们不需要只会创建脚本和查询的纯技术人员。想成为技能娴熟的数据挖掘人员,就要对所分析的业务具备过硬的实用知识。具有这种双重本领的人才是眼下最热门的人才。”

10嵌入式安全

近些年来,安全专业人员一直供不应求,不过据Schmidt介绍,如今,大批雇主在审查所有应聘者,而不只是安全岗位应聘者的安全技能和证书。他说:“我 在过去6个月看到的几乎每一份工作描述中都会出现‘安全’这个字眼。雇主要求应聘者具有构建安全环境的能力,无论他负责运行 电子邮件系统,还是从事软件开发。安全已成为工作描述中的一部分。”

公司仍然需要安全专家和主题专家,不过越来越多的是, 公司招聘的每个IT人员都要了解自己从事的那方面工作对安全有什么影响。

11数字家庭技术的集成

家庭日益成为高科技天堂,家庭视频与视频市场以及家庭安全和自动照明系统随之得到了长足发展。但是谁来安装这些系统?出现问题后,又由谁来解决问题?

为了回答这个问题,美国计算机技术行业协会与消费者电子协会合作,开发了一项名为“数字家庭技术集成师”的认证。Hopkins说:“这是我们在很长一段时间内见过的最热门、最有生机的市场。”

12 .Net、C #、C ++和Java等方面有优势

招聘人员和课程开发师看到,许多工作要求使用各种应用框架和语言,包括ASP.net、VB.net、XML、PHP、Java、C#和C+ +。不过Gordon认为,雇主们需要的绝不仅仅是编码人员。雇主很少需要在电脑前埋头工作、却脱离团队的员工。他们需要既懂Java、又能成为团队领导 人或者项目协调员的人才。

推荐介绍几款小巧的Web Server程序

偶然看到几个小巧有趣的Web Server程序,觉得有必要拿来分享一下,让大家除了知道Apache、IIS之外,原来还有更多有趣的选择。主要介绍了:micro_httpd、 mini_httpd、thttpd、lighttpd、shttpd 等无款小巧好用的httpd。

【 micro_httpd - really small HTTP server】

特点:
* 支持安全的 .. 上级目录过滤
* 支持通用的MIME类型
* 支持简单的目录
* 支持目录列表
* 支持使用 index.html 作为首页
* Trailing-slash redirection
* 程序总共代码才200多行

这个httpd适合学习简单的Web Server编写学习,因为它只有一个简单的框架,只能够处理简单的静态页,可以考虑用来放静态页。

官方地址:http://www.acme.com/software/micro_httpd/
下载地址:http://www.acme.com/software/micro_httpd/micro_httpd_12dec2005.tar.gz

 


【 mini_httpd - small HTTP server 】

特点:
* 支持GET、HEAD、POST方法
* 支持CGI功能
* 支持基本的验证功能
* 支持安全 .. 上级目录功能
* 支持通用的MIME类型
* 支持目录列表功能
* 支持使用 index.html, index.htm, index.cgi 作为首页
* 支持多个根目录的虚拟主机
* 支持标准日志记录
* 支持自定义错误页
* Trailing-slash redirection

mini_httpd 也是相对比较适合学习使用,大体实现了一个Web Server的功能,支持静态页和CGI,能够用来放置一些个人简单的东西,不适宜投入生产使用。

官方地址:http://www.acme.com/software/thttpd/
下载地址:http://www.acme.com/software/mini_httpd/mini_httpd-1.19.tar.gz

 

【 thttpd - tiny/turbo/throttling HTTP server 】

thttpd中是一个简单,小型,轻便,快速和安全的http服务器.

简单:它能够支持HTTP/1.1协议标准,或者超过了最低水平
小巧:它具有非常少的运行时间,因为它不fork子进程来接受新请求,并且非常谨慎的分配内存(性能对比表:http://www.acme.com/software/thttpd/benchmarks.html
便携:它能够在大部分的类Unix系统上运行,包括FreeBSD, SunOS 4, Solaris 2, BSD/OS, Linux, OSF等等
快速:它的速度要超过主流的Web服务器(Apache, NCSA, Netscape),在高负载情况下,它要快的多
安全:它努力的保护主机不受到攻击,不中断服务器

thttpd 类似于lighttpd,对于并发请求不使用fork()来派生子进程处理,而是采用多路复用(Multiplex)技术来实现。因此效能很好。同时它还 有一个特点就是基于URL的文件流量限制,这对于下载的流量控制而言是非常方便的。象Apache就必须使用插件实现,效率较thttpd低。
thttpd跟lighttpd类似,适合静态资源类的服务,比如图片、资源文件、静态HTML等等的应用,性能应该比较好,同时也适合简单的CGI应用的场合。

 

官方地址:http://www.acme.com/software/thttpd/
下载地址:http://www.acme.com/software/thttpd/thttpd-2.25b.tar.gz

 

【 lighttpd - light footprint + httpd = LightTPD 】

Lighttpd是一个德国人领导的开源软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web server环境。具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点。

lighttpd 是众多OpenSource轻量级的web server中较为优秀的一个。支持FastCGI, CGI, Auth, 输出压缩(output compress), URL重写, Alias等重要功能,而Apache之所以流行,很大程度也是因为功能丰富,在lighttpd上很多功能都有相应的实现了,这点对于apache的用 户是非常重要的,因为迁移到lighttpd就必须面对这些问题。

实用起来lighttpd确实非常不错,apache主要的问题是密集并 发下,不断的fork()和切换,以及较高(相对于 lighttpd而言)的内存占用,使系统的资源几尽枯竭。而lighttpd采用了Multiplex技术,代码经过优化,体积非常小,资源占用很低, 而且反应速度相当快。

利用apache的rewrite技术,将繁重的cgi/fastcgi任务交给lighttpd来完成,充分利用两者的优点,现在那台服务器的负载下降了一个数量级,而且反应速度也提高了一个甚至是2个数量级!

lighttpd 适合静态资源类的服务,比如图片、资源文件、静态HTML等等的应用,性能应该比较好,同时也适合简单的CGI应用的场合。


官方地址:http://www.lighttpd.net/
下载地址:http://www.lighttpd.net/download/lighttpd-1.4.16.tar.gz


【 SHTTPD - Simple HTTPD 】

Shttpd 是另一个轻量级的web server,具有比thttpd更丰富的功能特性,支持CGI, SSL, cookie, MD5认证, 还能嵌入(embedded)到现有的软件里。最有意思的是不需要配置文件! 由于shttpd可以嵌入其他软件,因此可以非常容易的开发嵌入式系统的web server,官方网站上称shttpd如果使用uclibc/dielibc(libc的简化子集)则开销将非常非常低。

特点:
* 小巧、快速、不膨胀、无需安装、简单的40KB的exe文件,随意运行
* 支持GET, POST, HEAD, PUT, DELETE 等方法
* 支持CGI, SSL, SSI, MD5验证, resumed download, aliases, inetd模式运行
* 标准日志格式
* 非常简单整洁的嵌入式API
* dietlibc friendly. NOT that friendly to the uClibc (*)
* 容易定制运行在任意平台:Windows, QNX, RTEMS, UNIX (*BSD, Solaris, Linux)


由于shttpd可以轻松嵌入其他程序里,因此shttpd是较为理想的web server开发原形,开发人员可以基于shttpd开发出自己的webserver!


官方网站:http://shttpd.sourceforge.net/
下载地址:http://jaist.dl.sourceforge.net/sourceforge/shttpd/shttpd-1.38.tar.gz

申请Ubuntu免费光盘

      几天闲着无聊,就去Ubuntu的网站申请了两张Ubuntu的光盘(现在最多就可以申请两张了),不过也还可以了,免费的吗?呵呵,地址全写的是英文的,不知道俺这的邮递员认识吗?

感慨~

      1、人生就是投资和收益的人生。如果你有钱,就投入金钱;如果你没有金钱,而有经验和能力,就投入经验和能力;如果你既没有金钱,也没有经验和能力,但是你有热情、勤奋和努力,那就投入热情、勤奋和努力。如果你既没有金钱,也没有经验和能力,连热情、勤奋和努力也没有,那就别想这些了。

  2、比赚钱更重要的是找到你自己的赚钱动力;

  3、比金钱重要的是时间,比时间重要的是时机,比时机重要的是你要抓住时机的决心,动力和准备!

  4、别好高骛远,机会一般都在你看不起眼的角落里藏着;

  5、舍得投入;

  6、决定一下,行动要快;

  7、永远尽可能准备好资源,随时准备抓住机会,要快!

  8、待人以诚,对人以善。有时候,机会是别人给的;

  9、给别人的比别人期待的多一些(这是我抄李嘉诚的,我很喜欢);

  10、赚钱有个普遍的法则:多做,快做,动脑筋变着花样做,就是别跟着别人一样做。

  11、合理规划有钱以后的日子,会让你走的更远;

  12、有信仰,有原则,有爱心。

php基础测试

如何改进以下的这行php代码?这段代码可以被用来测试php工程师应聘者。

< ?
echo(”Search results for query: ” .$_GET[’query’] . “.”);
? >

这段代码非常适合用来测试一个php开发人员是否合格。因为这段代码并没有要求太多记忆上的东西(例如函数的记忆),但是对安全,性能,兼容性上都做了考察。

参考答案:

< ?php
if (isset($_GET[’query’]))
{

echo ‘Search results for query: ‘,
htmlspecialchars($_GET[’query’], ENT_QUOTES), ‘.’;

}
? >

改进的地方有 :

* 把php短标签(< ?)换成了长标签(< ?php),因为并非所有php环境都支持短标签
* 增加判断该全局变量是否存在,防止在某些环境下出现notice错误,而且在当前的例子里如果query无则没必要输出
* 把echo的”(”去掉,echo不是一个函数,没必要使用“(”
* 把字符串两边的双引号换成了单引号,提高了性能。因为双引号里的内容会被尝试进行变量和转义字符的解析。
* 对query这个get变量进行html过滤。防止输出html,这可能会带来包括xss在内的一些危险
* echo后面的字符串之间的间隔使用逗号而不是句号。因为句号之间的字符串会先被连接起来然后再输出,而,号只是按顺序输出。在这个例子里显然不需要先连接字符串。

服务器空间

正在找服务器空间中。。。找一台像样Linux的服务器太难了(在中国)

哎。。。。