惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Spread Privacy
Spread Privacy
K
Kaspersky official blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Forbes - Security
Forbes - Security
Hacker News - Newest:
Hacker News - Newest: "LLM"
The Last Watchdog
The Last Watchdog
SecWiki News
SecWiki News
Attack and Defense Labs
Attack and Defense Labs
Google DeepMind News
Google DeepMind News
Security Archives - TechRepublic
Security Archives - TechRepublic
S
Secure Thoughts
WordPress大学
WordPress大学
Microsoft Security Blog
Microsoft Security Blog
P
Proofpoint News Feed
云风的 BLOG
云风的 BLOG
V
Visual Studio Blog
Security Latest
Security Latest
TaoSecurity Blog
TaoSecurity Blog
Cyberwarzone
Cyberwarzone
S
SegmentFault 最新的问题
Cloudbric
Cloudbric
aimingoo的专栏
aimingoo的专栏
S
Schneier on Security
N
Netflix TechBlog - Medium
MyScale Blog
MyScale Blog
T
The Blog of Author Tim Ferriss
H
Hacker News: Front Page
C
Cybersecurity and Infrastructure Security Agency CISA
小众软件
小众软件
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
AWS News Blog
AWS News Blog
AI
AI
G
GRAHAM CLULEY
IT之家
IT之家
P
Privacy & Cybersecurity Law Blog
L
Lohrmann on Cybersecurity
Last Week in AI
Last Week in AI
D
Docker
Recent Announcements
Recent Announcements
O
OpenAI News
T
Threat Research - Cisco Blogs
GbyAI
GbyAI
S
Security @ Cisco Blogs
T
Troy Hunt's Blog
C
Check Point Blog
博客园 - 三生石上(FineUI控件)
A
About on SuperTechFans
The Cloudflare Blog
阮一峰的网络日志
阮一峰的网络日志
N
News and Events Feed by Topic

Posts on Changkun's Blog

Why High-Output Systems Are Often the First to Stop Growing Dark Forest Theory: A Formal Derivation Agents (or Humans) in Goal-Directed and Goalless Environments: On Pipelines, Priors, and the Rhythm Between Exploration and Exploitation At the Boundary of Self-Reference: From Stable Structures in Artificial Intelligence to the Self as a Recursive Model in an Open Dissipative System 2023 Reading List 2022 Reading List 2021 Reading List Are PSS/USS and RSS Actually the Same Thing? Performance Differences from Page Faults vs. Prefetching 2020 Year-End Review Migration with Zero Downtime 2020 Reading List The All in Go Stack Pointers Might Not Be Ideal for Parameters Eliminating A Source of Measurement Errors in Benchmarks Setup Wordpress in 10 Minutes 我为什么不再写博客了? 2019 年终总结 2018-2019 读书清单 Ten years of blogging Rethinking the Reflections on Communications and Trusts 2018 年终总结 Go source code study is open source Go source study: unsafe Pattern Go source study: sync.Pool Go runtime programming A Million WebSocket and Go Designing Asynchronous RESTful APIs 分布式杂谈01:CAP 理论的误解 Issues of Human-Bot Interaction 压缩法与深度网络的泛化性 Go in 1 Hour UMSLT04: The Past and Present of SGD UMSLT03: A Gentle Start of Learning Theory UMSLT02: A Breif History of Neural Networks UMSLT01: A Breif History of Regularization 不笑不足以为道 论文笔记:Generalization in Deep Learning 2017 年终总结 2017 读书清单 深度学习的泛化理论简介 删除 GitHub 上已经提交的敏感信息 硕士生涯的第一年就这样告一段落了 人肉计算(10): 系统参与激励 人肉计算(9): 陷阱的解法 别聊,一聊你就暴露 人肉计算(8): 人肉计算与数据科学中的陷阱 人肉计算(7): 社会行为分析 Hexo + GitHub + Travis CI + VPS 自动部署 人肉计算(6): 预测市场 人肉计算(5): 信用风险评级模型 读书与回报 瞎扯: 对现代企业理论与当下IT企业的商业模式和信息产业链的规律性的思考 人肉计算(4): 输入数据聚合与PageRank 又一次打整了一下博客 人肉计算(3): 输入数据聚合与链路预测 人肉计算(2): 意图博弈 GWAPs 人肉计算(1): 众包与群众智慧 对后辈同学在计算机专业上的答疑与解惑 在德国的医疗及住院体验 这可能不是一个技术博客了 实验楼楼赛第3期-Python-题解 迅速更换了 DISQUS Electron 深度实践总结 良好的编码体验的三个方面 2016 年终总结 2016 读书清单 最近在着手写的文章 微信小程序文档极致总结 Built a Desktop Client for My Blog Guacamole 源码分析与 VNC 中 RFB 协议的坑 《高速上手 C++11/14》正式发布 Docker 极速入门教程02 - 镜像与容器管理 Docker 极速入门教程01 - 基本概念和操作 阶段性沉默 ELK+Redis 最佳实践 终于全面启用了 HTTPS 苹果开源了LZFSE无损压缩 Hash 碰撞的一种思路 记一次完整的 Kaldi-TIMIT 示例运行 Kaldi 上的 TIMIT 例子 Kaldi 安装与部署 从科研写作谈起 Swift API 设计指南 有趣的人类 所以其实论文并没有什么鬼用 Githug 通关记录及指南 小结一下这学期的收获 2015 读书清单 2015 年终总结 负能量爆表 转眼就快两个月了 博客迁移记录 大三总结 这个世界,终究不会是我们的。 Linux 内核分析 之六:Linux 内核创建进程的过程 小说「泽缘」 Linux 内核分析 之五:system_call中断处理过程的简要分析 大创项目的标题真是每年都在考验同学们的想象力啊 Linux 内核分析 之四:使用库函数API和嵌入汇编两种方式使用同一个系统调用
谈谈过去三个月在实验楼的实习经历
Changkun Ou · 2016-09-20 · via Posts on Changkun's Blog

谈谈过去三个月在实验楼的实习经历

Published at发布于:   |   PV/UV: /   |   Reading阅读: 1 min

这篇文章原本写于实习满一个月的时候,本打算作为阶段性总结,但本人实在是比较懒,一拖再拖,到现在实习已经基本结束了,本该属于我的坑也基本填得差不多了,我也可能要正式迈向我的研究生新生活了。就干脆改成整个实习阶段的总结吧。

与以往大二暑假、在德国交换的时自己主动找的几个实习不同,之前的实习都是我主动投递简历、毛遂自荐。而这次在实验楼的实习确实也是一件巧事,原本还在纠结暑假究竟是回家修整准备读研的事宜、还是找份实习打发一下无聊时间。结果正好在我决定回家的前夕,收到了来自实验楼的工作邀请。心想回家闲着也是闲着,自己正好也是实验楼一个(不算称职)的用户,所以在简短的和 BOSS 磊哥聊了一些工作事项后,就接受了在这里实习。

以前大二那份实习的工作内容异常的简单,每天就是面向 C++ 修各种 bug,写一写无聊的测试,实现各种简单到不能再简单的需求,每天下班前交付代码然后领工资,两个月坐下来没有一点感觉,没收获多少新知识,最大的收获可能就是零花钱。而这次的实习差不多重新点燃了我对新技术的几乎快要熄灭的渴望。

先说说工作情况

毕设的时候,我总以为我接触过的技术是在是够多了,大大小小的各式各样的技术也不过如此,万变不离其宗,所以只要认认真真读一读文档,没有什么不能解决的问题。

然而事情并没有想象的那么简单,踩了不少坑,总结下来就是太年轻。在实验楼实习的三个月里,倒是接触了很多以前并不在意、也没有需求去了解的技术,比如 Linux 运维、比如 Docker 等等,我甚至为此列了一个长长的 TODO-DONE-LIST,并希望我能够在研究生生涯里把这些内容逐一攻破。

第一个月电脑如实的记录了我的工作状态(部分时候断网没有记录):

每天下来过得还算充实,比起整日待在在学校里、面对昏暗的寝室环境浑浑噩噩效率提高了不少。这次的实习干的事情不多,总结下来其实就是四件简单的事情:

  1. 十七门 C++/JS/Swift 学习课程
  2. 一个跨平台的桌面客户端
  3. 一套基于 ELK 的 Nginx 日志系统
  4. 一个很挫的 kNN+协同过滤 推荐系统

入职前和磊哥聊起工作内容时,我甚至不知道我主要要去解决的是已经很长时间没有碰过的 C++,直到入职后才任务才逐渐变得清晰起来。正好借助这个机会,让我有时间重拾 C++ 的一切,某种程度上算是带薪学习吧。

公司搬家前的那一个月坐在磊哥和进哥背后,所以经常能听到各种各样的关于实验楼产品的讨论。因此那一个月也可以毫不夸张的说是我在实验楼实习收获最大的一个月,也正是那一个月在我完成不到三门学习课程的编写情况下,被叫去写客户端、搭日志系统,也正是那一个月我差不多了解完了实验楼使用的主要相关技术以及还需要被解决的问题,妥妥的收了很大一波经验。

写推荐系统更是完全不敢想,尽管大三整年研究过深度学习这类技术,写过机器学习算法框架,但仍然没有任何底气能够打包票自己能够写出来,但仍还是强行装一波接受了下来。最后写完的时候磊哥突然和我说要把我的代码 merge 到主库里去,瞬间小兴奋了一下(因为即便是此前的客户端在当时也没有被正式上线),就马上滚回去重构了…

刨去写推荐系统的那一周多的时间,剩下的差不多一个半月的时间里,就是安心的去填自己留下的坑,我也不再被安排其他新的开发任务,这从我即将去读研这件事来看也是符合情理的。

再说说公司运作

我个人骨子里其实是非常反感、极度的厌恶那种反应及其缓慢的公司的,尽管多次的 Review&Meeting 可能带来业务上的稳定与安全,但如果一个非常非常简单的内容也要花上近几个月的时间来推进,每个人甚至只专注于解决某一件微乎其微的需求,那么这种公司基本上不适合我长久待下去。

在小创业公司的好处就是可以完整的接触到整个公司的运作方式,一个人可以从设计到开发,从测试到迭代、从运营到上线,了如指掌。

从我整个大四、暑假在实验楼实习以及电科研究生就读的第一个月在导师底下干活的这三段经历来说我目前倾向于将目前的公司根据技术栈进行分级:

  1. **学术驱动型公司。**这类公司普遍对新技术不敏感,全公司上下对新技术充耳不闻,甚至连所谓的 CTO 对一些五年前就已经火的不行的技术闻所未闻。他们的产品使用的技术较为落后,但核心技术确实学术界中比较重要的成果。

一个比较典型的例子是我五月份跟着一个本科老师去接触的家居公司,这个公司的核心产品不偏不倚,说不上差,核心技术也有,主要在前端,可惜服务端太糙,服务端的用居然是 JavaEE 等一些老掉牙的东西,整个外包给电子科大,连版本控制都没有。

此外,有朋友跟我说他的公司居然还有用 Turbo C 这种上古神器。显然,这类公司在我心里其实已经『死』了,无论他们的产品多么出色(具有历史性的产品除外),我反正是不会接受的。

  1. **产品驱动型公司。**这类公司一切以产品为重,一句话评价这类公司就是『就差一个程序员』系列。无论他们的产品有多么出色,我依然还是不能接受我的上司是一个不懂技术的人。因为开发上的事情,是很难解释给外行听的。隔行如隔山。

  2. **技术驱动型公司。**这类公司愿意尝试使用新技术、生产新技术,敢于用新技术来试错,而这类公司其实是我心里最为满意的一类公司。通过在实验楼的实习,我认为实验楼可以被归类为技术驱动型的公司。从我个人对这类公司之所以存在有一个看法:老板是一定是技术出身。

实验楼的 CEO 磊哥就是技术出身,每次和他闲聊起技术的时候总能感觉到被吊打。这种谈话已经不仅仅局限于讨论某个技术的实践,而从他的话语中能够感受并学习到作为一个不再常做技术的人,如何能保持对技术的关注、并寻找合适的机会将其应用到自己的产品,最后以一个上帝的视角透过技术对行业进行观察。(经验+MAX)**2 :)。

另外举一个例子就是 ZEALER 2.0 的落败。ZEALER 的王自如只能算是一个极客,由于他不懂开发,他的合伙人李侃虽然是学数学的,但实际上也不懂开发。所以在 ZEALER 早期发展的时候有点不屑于顾,只认为『需要一个牛逼的网站』。所以导致了在 ZEALER 2.0 刚发布的时候由于技术积累不够成熟,被罗永浩吊打而萎靡不振的大半年之久。

从骨子里来说我是一个比较倾向于自由的人,不太愿意受到太多的束缚。一个从管理上『扁平』的公司是我最愿意接受的。虽然有人会说没有严格的管理感觉就像只是换了个地方坐下来写代码,但我认为有一个环境还是很重要的,因为环境对于人的影响总是潜移默化的。换句话说,你应该相信我一定会遵守并维护公司的利益,而不是一开始就用一堆规定来限制住我,Trust By Default。就这点来看,实验楼是一个好公司。

总结

总的来说,在实验楼的实习算得上是我人生规划中一次意料之外的经历,而这次意料之外的经历让我无论在技术上还是在产品运营上都学到了不少东西,也为我励志在三十岁之前专注技术增加了不少筹码。