zoukankan      html  css  js  c++  java
  • 职业规划

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

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


    需要看的书:

    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平台上的开发环境
    - 有较强的分析和解决问题能力,有持续自我学习的能力和意愿, 善于沟通和逻辑表达,良好的团队合作意识。
    - 精通机器学习,有机器学习应用经验更佳
    - 有海量数据处理背景更佳

  • 相关阅读:
    How do you Design a Circular FIFO Buffer (Queue) in C?

    搞懂分布式技术5:Zookeeper的配置与集群管理实战
    Spring boot 启动提示数据源错误
    IntelliJ IDEA 如何配置数据源
    Windows 10 中你可能用得最多的快捷键
    JUnit 5 测试问题 throws java.lang.Exception’ must be static unless the test class is annotated with @TestInstance(Lifecycle.PER_CLASS)
    Intellij IDEA 如何自动生成 serialVersionUID
    Docsify 初始化文件夹
    Docsify 安装
  • 原文地址:https://www.cnblogs.com/catkins/p/5270763.html
Copyright © 2011-2022 走看看