前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Debug Your Life!关于学习、面试和工作成长(附B站录播)

Debug Your Life!关于学习、面试和工作成长(附B站录播)

作者头像
Datawhale
发布2019-08-23 16:37:45
6380
发布2019-08-23 16:37:45
举报
文章被收录于专栏:Datawhale专栏Datawhale专栏

Debug Your Life:江水

直播概要

江水

1. 某互联网公司一线工程师

2. 代码写的跟屎一样(大佬不要闹!),指点江山一套一套的

如何学习

1 了解互联网

1.1 程序员都有哪些领域?

  • 前端: CSS/JavaScript/TypeScript
  • 后端: Java/C/C++/C#/Go/Erlang/PHP/Ruby/Python/NodeJS
  • 手机端: Android/Java/Kotlin iOS/Objective-C/Swift
  • 算法:机器学习/深度学习
  • 硬件:嵌入式/PFGA
  • 游戏
  • 测试:测试开发
  • 运维:运维开发
  • 基础设施:网络、虚拟化/容器、大数据

1.2 程序员的工资都是多少?

  • 校招 本科生 13-18k
  • 校招 研究生 15-23k
  • 工作三年 20k+
  • 高级工程师 30k+
  • 资深工程师 40k+

1.3学历重要吗?

  • 互联网行业只有两个大学 清/北/中科院 北航/北理/北邮/北科 哈工大 武大/华科 天大/南开 浙大 复旦/上交其他大学
  • 但也有高中学历的架构师有清北毕业的普通工程师

2 学习方法

  • 有效规划利用时间
  • 买个好电脑 至少要能跑三个以上虚拟机
  • Linux不是一门课程/技术 而是一种工具

种一棵树最好的时间是十年前,其次是现在

人,更适合专注;而不是像计算机一样,不断切换、中断

世上无难事,只要肯放弃

3 推荐书籍

  • 计算机组成原理
  • 操作系统
  • 计算机网络
  • 数据结构与算法

关于编程的技术书

  • C程序设计语言
  • 明解C语言
  • UNIX环境高级编程(APUE)
  • C++ Primer
  • Java核心技术
  • Effective java
  • SQL必知必会
  • 高性能MySQL
  • Heading First系列
  • xx是怎样xx的
  • 图解系列

关于编程的非技术书

  • 设计模式 可复用面向对象软件的基础
  • 深入浅出设计模式
  • 重构 改善既有代码的设计
  • 代码整洁之道
  • 程序员修炼之道
  • 人月神话
  • 人件
  • 哥德尔 艾舍尔 巴赫书 集异璧之大成

如何面试

1 面试准备

1.1 做点正事

  • 基础算法 一定要多刷题(leetcode 牛课)
  • 多看开源项目 多读源码(github stackoverflow)
  • 函数式编程
  • 写一个数据库或者是操作系统

1.2 如何去大公司

  • 实习生/夏季实习生
  • 内推
  • 秋招/校招
  • 春招
  • 参加比赛:百度之星 阿里天池

1.3 想好做什么

  • 一听秋招开始了,慌了->海投
  • 第一份工作很重要,决定后续的工作->不要反复跳
  • 从0到1的蜕变

1.4 认清校招

  • 基础知识/基本技能+项目经验
  • 学习态度 认认真真刷题,好好学习的一般offer都不差
  • 实习经验 没实习就没实习经验
  • Web开发 要问SQL优化
  • 服务端开发 要问操作系统
  • 算法同学 一般这些是不问的
  • 做工程 需要很多周边知识
  • 如果不做基础设施 操作系统能知道是什么就可以
  • 基础算法 请先学好数据结构
  • 有些知识不会就是不会 虽然工作也不用

人生不能像做菜 把所有的材料都准备好了才下锅

珍惜每一个机会 但也不要打光所有底牌

2 面试技巧

  • 态度很重要
  • 如何证明你会
  • 项目需要能讲出来

3 面试官角度

  1. 基本算法和数据结构 考察一个人的基本功
  2. 算法复杂度分析、常规代码细节 考察一个人是否具有性能优化、容量规划、方案对比的意识
  3. 架构设计 考虑问题是否全面 是否具有全局观和前瞻性 是否意识到学习的重要性
  4. 场景题 解决问题的能力 现实问题转化为工程模型

如何工作与成长

1 如何工作

1.1 有些坏习惯

  • 眼高手低 再小的事情也要认真对待
  • 是否足够重视 是否有功利心
  • 没有想不想 只有该不该
  • 不要想能得到什么 要想能提供什么

1.2 学会沟通

  • 多人协作 沟通交流、代码交互、接口规范 不仅是Git
  • 太内向不好 需要融入团队
  • 需要及时反馈
  • 有效沟通 能提供什么 需要反馈什么 完整表达 客观事实+观点 人少时 同步沟通 会议、电话 人多时 异步沟通 邮件、文档、多人协作系统
  • 学会提问 《提问的艺术》 做了什么 现在是什么情况 感觉有什么问题

1.3 项目

  • 项目 如期交付(守时守信)、质量保障(保质保量)、项目产出(完整结果)
  • 过程 信息同步
  • 目标 为何要做这件事 意义是什么
  • 结果 目标的关键因素 核心指标

2 如何成长

  • 50%工作 30%学习 剩下的其他
  • 要么练剑 要么炼气

2.1代码之外的技能

(访问外国网站 跳出周围的圈子 看看外面的世界)

  • 英语能力
  • 自学能力 可以更快更有效的get到技能
  • 思考能力 独立思考 思维训练 保持头脑灵活 知道什么样是对的,什么样是错的
  • 写作能力 写博客 整理、记录
  • 沟通能力 交流融入圈子 人是群居动物
  • 分享能力 把技术讲给别人,也会提升自己
  • 营销能力

2.2 3F

Focus专注、Feedback反馈、Fix修正

2.3 追赶风口

电商 P2P 陌生人社交 区块链 人工智能 计算硬件化

经历这个东西 技巧永远弥补不了

保持好奇心 怀疑心态

压力是常态

要看到积极的一面 不要只提出问题 也要解决问题

总结

没有银弹

钱 不是唯一目标

O ever youthful, O ever weeping

--- Jack Kerouac <The Dharm Bums>

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Datawhale 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档