职业规划

最重要的是基础,一些框架等可以很快上手。

基础是语言和数据结构算法。


需要看的书:

1  posix编程


参考   Posix线程编程指南- 大约有5篇

 15号之前看完


2 accelerateC++ 

3 stl

孟岩、侯捷译:c++标准程序库

学习stl的资料总结  :http://www.cnblogs.com/me115/archive/2010/10/15/1852438.html



4 网络编程

理论参考:

谈一谈网络编程学习经验(06-08更新)

实践:

(python 网络编程)



5Djangobook2中文版.

6推荐系统实践

6数据挖掘&人工智能&机器学习


   先看《 数据挖掘导论》 比较好

  如果不是纯搞数据仓库+挖掘,个人更推荐刘兵的《WEB Data Mining》
  + Bishop大神的《Pattern Recognition And Machine Learning》。


个人建议如下:
    第一阶段:掌握数据挖掘的基本概念和方法。先对数据挖掘有一个概念的认识,并掌握基本的算法,如分类算法、聚类算法、协同过滤算法等。
          参考书:《数据挖掘概念和技术》(第三版)范明,孟小峰 译著。
    第二阶段:掌握大数据时代下的数据挖掘和分布式处理算法。现在已经进入大数据时代,传统的数据挖掘算法已经不适用于
         参考书:《大数据:互联网大规模数据挖掘和分布式处理》 王斌 译著。
    第三阶段:使用Hadoop进行大数据挖掘。Hadoop里面有一个Mahout组件,几乎包括了所有的数据挖掘算法,包括分类、聚类、关联规则等。
        参考书:Hadoop实战(第二版).陆嘉恒 著。
    另外,数据挖掘是数据库技术、人工智能技术、机器学习技术、统计学习理论、数据可视化等一系列技术的综合,所以,要想学好数据挖掘,这些技术也得懂的呀。
    推荐入门时先看浙江大学王灿老师的数据挖掘课程,网上搜下


资料:1  机器学习与数据挖掘的关系 

             2 微软的资料



7设计模式

8软件测试

9 失控:全人类的最终命运和结局

10 哥德尔·艾舍尔·巴赫——集异璧之大成



学习网络编程的十个步骤

    经过多年的网络编程实践之后,个人觉得初学网络编程者可以从以下几个步骤开展:


    1)下载一个可以互动的学习工具,通过这个与这个工具互动,我们可以及时的学到每个api的结果如果。我个人强烈推荐一个互动好工具,即python,下载地址http://www.python.org 对于有c/c++或java基础的朋友通过一两个礼拜的时间就可以上手了,另外个人建议初学者可以学习dive into python
      
    2)掌握网络编程中会用到的几个基本概念和内涵,比如IP地址,port号,socket等

    3)记住和消化网络编程C/S模型,把server和client端编程的常用模式理解和消化

    4)花几天时间学习socket api集,api集可以分为下面几大类:
       创建   socket bind listen accept
       收发   read/recv/recvfrom  write/send/sendto  
       关闭   close shutdown
       参数   getsockopt/setsockopt
       地址   gethostbyaddr getaddrbyhost,...

       在学习这些api时候,可以先关注在函数功能,参数意义上

    5)结合python互动平台,实践socket api的用法,比如socket函数怎么使用,bind怎么使用等等。在互动过程中,我们可以变换参数,看看调用结果如何。比如,
       创建一个tcp socket的语法如下:
       socket(AF_INET,SOCK_STREAM)

       创建一个udp socket的语法如下:
       socket(AF_INET,SOCK_DGRAM)

    6)学习socket server端编程实现简单规约比如echo,time等,然后通过cmd中的telnet来测试。

    7)学习I/O模型,比如阻塞、非阻塞和反应式(select,poll,WaitForMultipleObject)等

    8)学习Richard Stevens的《Unix网络编程》,深入学习其中的api原理以及服务端设计原理,并通过代码编写。

    9)下载高性能网络编程框架twisted,笔者强烈推荐,它将使你的网络编程效率提高10倍以上。

    10)学习设计模式、操作系统知识比如线程、进程、同步等。







探索:

互联网进化史 似乎很不错。

pip PIP(Personal Information Portal)一种个人信息管理的软件,可以管理个人的各种信息,包括文档,文件,数据表格,网页。即可以存储,也可以查询。目前还没有这方面的代表软件。国产软件magicflu,3.0引入网页快照,网页保存功能,也在向PIP方向迈出了重要的一步。


需要做的事:

建立个人站点




一些好的文档:

推荐系统的工程挑战 (下载讲稿--百度 陈天健

个性化推荐系统的几个问题 (下载讲稿豆瓣网首席科学家王守崑


记录:

威客是个不错的平台。例如,猪八戒


1、架构师胚胎(程序员)  学习的知识是语言基础、设计基础、通信基础等,应该在大学完成,内容包括java、c、c++、uml、RUP、XML、socket通信(通信协议)——学习搭建应用系统所必须的原材料。  2、架构师萌芽(高级程序员)  学习分布式系统、组建等内容,可以在大学或第一年工作时间接触,包括分布式系统原理、ejb、corba、com/com+、webservice(研究生可以研究网络计算机、高性能并发处理等内容)  3、架构师幼苗(设计师)  应该在掌握上述基础之上,结合实际项目经验,透彻领会应用设计模式,内容包括设计模式(c++版本、java版本)、ejb设计模式、J2EE构架、UDDI、软件设计模式等。在此期间,最好能够了解软件工程在实际项目中的应用以及小组开发、团队管理。  4、软件架构师的正式成型在于机遇、个人努力和天赋软件构架师其实是一种职位,但一个程序员在充分掌握软构架师所需的基本技能后,如何得到这样的机会、如何利用所掌握的技能进行应用的合理构架、如何不断的抽象和归纳自己的构架模式、如何深入行业成为能够胜任分析、构架为一体的精英人才这可不是每个人都能够遇上的馅饼……

 

 

 

招聘一则:

一淘广告平台目前是国内第二大广告平台,并且保持着100%以上的增长速度。一淘广告平台拥有国内最具商业价值的海量流量和用户数据;最丰富的广告模式;国内最大的联盟广告平台。互联网领域最具潜力的两个方向:电子商务和互联网广告,在一淘广告平台结合。而一淘广告技术部就是这个最具潜力的广告平台的研发团队。
在这里,汇集了当前最热门的技术和研究:大规模机器学习、数据挖掘、自然语言处理、推荐系统、用户行为分析、云计算、高性能架构;
在这里,你能够接触到一淘最核心的系统、国内最具有商业价值的数据、最有挑战性的技术问题;你不仅仅是一个螺丝钉;
在这里,有来自来自微软、doubleclick、百度、yahoo等公司的顶尖工程师、有昔日的高考状元、名校博士和硕士,无数的牛人伴你一起成长;不管是算法、C/C  、还是Java、PHP都会有一条为你量身订制的技术路线;
在这里,你的每一行代码都会影响到数亿网民,一个升级可能带来每天数十万收入增长;你会深刻体会到技术创造价值。加入一淘广告技术部,与牛人一起、与一淘广告平台一起快速成长!

算法;64人-北京杭州各半

三多是资深总监

铁相:算法的负责人;



自然语言处理专家
学历要求 本科
岗位描述 应用自然语言处理的相关算法进行词汇、query、广告、拍卖词、网页等的分析挖掘、广告相关性计算、Ontology构建等。应用自然语言处理算法改进淘宝的广告投放算法 
岗位要求 计算机及相关专业本科或本科以上学历
精通算法设计/数据结构
- 精通C/C  语言编程,熟悉网络编程、多线程编程技术
- 熟悉Linux/Unix平台上的开发环境
- 有较强的分析和解决问题能力,有持续自我学习的能力和意愿, 善于沟通和逻辑表达,良好的团队合作意识。
- 精通自然语言处理,有自然语言处理应用经验更佳

机器学习专家
学历要求 本科
岗位描述 利用机器学习算法改进淘宝的广告算法投放。包括广告的排序、CTR预估、广告筛选、自动分类等 
岗位要求 计算机及相关专业本科或本科以上学历
- 精通算法设计/数据结构
- 精通C/C  语言编程,熟悉网络编程、多线程编程技术
- 熟悉Linux/Unix平台上的开发环境
- 有较强的分析和解决问题能力,有持续自我学习的能力和意愿, 善于沟通和逻辑表达,良好的团队合作意识。
- 精通机器学习,有机器学习应用经验更佳
- 有海量数据处理背景更佳

posted @ 2012-09-20 16:07  唐僧吃肉  阅读(181)  评论(0编辑  收藏  举报