Android开发12年高级工程师-作为-IT-行业的过来人,我想对你们说~

article/2025/9/8 5:42:07
  • 如果工作安排不清晰,请主动与上司沟通,明确关键的时间点和交付物。沟通前自己要有预案。>>(没有上司喜欢不带着脑子跑来问问问的下属的)
  • 如果完成工作需要其他资源,先尽力协调,再向上司求助,并明确说明理由和已协调结果。>>(他出面跟人撕逼需要子弹,不要让他自己到处找子弹)
  • 上司的技能树和技能点分布,可能跟你完全不同>>(自己那坨技能点不全是金子,别人的技能也不全是屎,世界主体仍是分工合作)
  • 自己的工作可以求助,但工作主体仍然是你;每次求助都是偷师的机会。>>(谁给谁打工?这很重要)
  • 遇到例外情况,及时反馈给上司;确信自己有能力且得到授权的,可以同步开始解决,否则等指示>>(不反馈那叫知情不报;不解决那叫消极怠工;自己乱搞叫越权行事)
  • 事情进展顺利也要定期反馈进展;每日三省吾身,不要让别人逼着你写总结。>>(老旧的Unix程序默认没有return,但你不是它。他跑来问的时候,心里是充满疑惑的)
  • 是男人都会犯错(from DuangLong),但相同的错误不要一而再、再而三地犯>>(上司不是你爹,他口水干了就会变得异常烦躁)
  • 不要随便发脾气,更不要对着上司发脾气>>(否则的话,很快就会通过惨痛教训明白:平等、自由都是相对的)
  • 在绝大部分情况下,不要跟上司谈情说爱玩暧昧,搞基也不行>>(除非你打算辞职)
  • 不要当上司是sb;如果觉得他不是很懂,委婉地教会他。>>(绝大部分情况下,后果是下属sb了)
  • 我不排除有很恶心的上司,但你的上司是一种非常珍稀、宝贵的业务资源。好好对待他,不要有意无意地滥用他、损耗他,尽量让他开心。否则等到闯祸了,让爹妈来公司保佑你么?比上司更能保佑你的是你的客户。

★★★如何对待同僚★★★

  • 我知道一定会有人大叫着说:如今是平权时代,哪里有什么狗屁上司。好吧。
  • 一般情况下,把你的同僚当作上司对待——可以套用上面的大部分建议>>(你敬人一尺,人敬你一丈。鬼知道什么时候同僚变上司)
  • 工作要通过定期碰头协商分工和通报进展>>(要不你单干吧)
  • 答应了别人的事情要做到,要不就不要答应;>>(做不到比拒绝的后果更严重)
  • 有啥事情可能起纷争时,事先讲好道理

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享

,商议好规矩>>(这一条是金科玉律!)

  • 不要吝啬于分享经验,但不要随便发表看法>>(大家都喜欢对自己有帮助的人。但看法么……说者无心听者有意)
  • 一定要有几个死党,关键时刻可以帮你扛扛工作、通风报信;>>(谁没有难处呢?但没人欠你的)
  • 今天求助了别人,记得日后要还,晚还不如早还。反之同理。>>(纸牌屋)
  • 条数是不是很少?混过几年职场后,大部分人就挂在这几条上。

★★★如何对待业务★★★

  • 业务不是编程,业务是钞票。
  • 搞清楚自己的岗位职责;搞清楚跟你工作直接相关的周边岗位职责>>(基本入门要求)
  • 搞清楚业务流程,自己在其中的位置;搞清楚公司靠神马赚钱,自己在其中的作用;>>(最好的公司都是流程化运作的,没有也要理出来)
  • 编程之余,多看看公司对应的商业和工程专业书籍但请务必记住:业务不是学来的,是干出来的>>(业务不是编程和0/1,业务是非常复杂的,它很难掌握但比程序的变化要少得多)
  • 搞清楚你对老大,同僚,周边部门的价值;搞清楚老大,同僚,周边部门对你的价值;>>(不清楚这些,工作中怎么互帮互助 or 谈条件 or 撕逼)
  • 经常跳出自己的岗位看问题,有极大好处>>(否则很容易固执己见讨人厌呢)
  • 要区分有价值的功劳和没有价值的苦劳>>(否则白忙一场空)
  • 干得好就可以多要钱,但要有理有据,最好的办法是拿好的考评>>(连考评周期和规则都没有的公司,还是算了吧)

★★★如何对待编程★★★

  • 脱离业务的编程毫无价值,除了毕业生
  • 精通一门语言,最好是C和JAVA,脚本随意;其他的都可以类推。
  • 软件程序质量的底线,是你知道你的程序和编译器到底都干了啥。因此:程序语言中的高级技巧都是巨坑,如果没有十足的必要和把握,不要用。
  • 编码注释是最好的文档?不全是,学会Office和MindManager,否则试下用编程表达流体力学。
  • 熟记常用的调用接口(系统,数据库,函数库,中间件),其他的备好手册,不要费太多脑。
  • 有括号,不要浪费脑子去记忆运算优先级。更不要随便相信高级运算符。
  • 让别人能看懂代码,否则自己也会看不懂。
  • 时刻谨记性能和存储约束,它们可以交换;更可以跟钞票交换。如果这两者严重受限,高级程序语言都是渣。
  • 任何复杂的系统都可以分解,函数和有限状态机是最重要的概念。类、对象不一定重要(想不到吧),模版、继承、派生很容易坑了你。
  • 绝大部分的“跨平台”、“可扩展性”设计目的,大部分还是要依赖重构去解决。更悲剧的是,很大比例的重构是由于这两类设计而导致的。
  • 谨慎对待重构,一般来说初次重构的失败率高达50%以上,大多数情况下是质量问题导致失败。所以,要做好3个版本的成本预算。新人玩重构?百分之百失败。
  • 函数、API、消息、通讯报文没有区别,都是接口
  • 常用算法并不多,复杂算法要学好数学和库
  • 开源软件不要乱用,其授权文件和律师团可能让公司破产,一定要问老板和律师!
  • 商用软件收费并不仅仅是因为功能,还有性能和质量。开源软件的质量良莠不齐。
  • 好好读编程规范!好好读编程规范!好好读编程规范!
  • 不要依赖于DEBUG!事先想好软件逻辑可以节约大量的DEBUG时间。
  • 硬件是会坏和异常的!服务器、配置库不说了,传感器和执行器同理。
  • 人是会犯错的,而且很经常!做好代码和数据备份;检查输入,尽量控制输出。

★★★如何对待工具★★★

  • 不能提高工作效率的工具毫无意义
  • 工具是拿来用的,不是拿来炫技的
  • 优先考虑测试工具,其次考虑编码工具,最后考虑代码检查工具>>(理应如此,但实际上哪个好到手就先整哪个,呵呵)
  • 工具本身是带缺陷的,要考虑潜在缺陷的风险和代价,否则会死得很难看。
  • 开发系统集成的IDE最“好”用;纯编辑器请随心,注意保存配置数据。
  • 一个需要大量配置才能实现功能的工具,要慎用。
  • 优先选择收费的商业工具,除非实在没钱。
  • 带有“云”系统的工具,呃,去与老大对话,观察他是否变成了大菠萝第一章的BOSS。
  • 很多奇奇怪怪的小工具会做很多奇奇怪怪的事情,特别是安全类工具。留个心眼。
  • 如果找不到合适的工具,自己写一个,注意性价比(哦,我们有个小小的工具团队)
  • 开发环境几乎永远比客户的运行环境奢华,时刻记住这一点。
  • 买一套你用得顺手的硬件外设,包括键盘、鼠标、显示器,这个投入相当划算。(听说新浪的开发环境是众所周知的负面案例)
  • 奇怪的键盘布局会降低效率,慎用此类逼格高的键盘。
  • 有午休的开放办公室,慎用噼噼啪啪的键盘鼠标,否则可能导致你的脸噼噼啪啪作响。
  • Office是最应当掌握的非编程类工具,没有之一。
  • 抛弃各种IM工具,回归到电话、短信和Email。还需要说理由?
  • 努力变成你的老大最好用的工具,否则他会寻思着换工具,就像你寻思着换键盘一样。

★★★如何学习提升★★★

  • 最好的学习,是工作中学习,学以致用。因为这样目的最为明确,效率最高,正向负向刺激最强烈。
  • 找个好师傅,默认情况下抱紧上司的大腿。一天最多问他一次,逼着自己先想清楚再去问。
  • 编码不是目标,实现功能不叫大牛。一般对代码的优化集中在性能,可维护性,可扩展性,安全性和质量健壮性上。大牛们就牛在这里。
  • 不要把工作带回家!学习同理。家里有太多分散注意力的事情,而且非常容易模糊各种边界和deadline。
  • 某些公司有严格的信息安全管理制度,不可以在公司做自己的事情。那在家里好好布置一个书桌书架,并尽量减少干扰。
  • 出于集中精力的考虑,书桌上应当尽量简单,比如不要有妹纸和电视,嘿嘿。每天2个小时的时间,把所有干扰都排除;要么就不学,要学就沉浸进去。
  • 在家里做东西学东西,同样要坚持有特定目标,否则都是胡乱学,成不了体系出不了东西。
  • 社区是好东西,但很零散,不能依赖。官方手册和文档是最系统的,开源可看代码。
  • 不要沉浸在具体编码中,理清目标,逻辑,流程,模块和状态迁移。更重要的是理清业务。
  • 逻辑思维清晰、表达简明扼要、英文起码阅读无压力。>>(沟通都成问题就不要谈提高了,真的)
  • 写博客、上论坛撕逼、写教材、做培训讲师,对理清逻辑、提升表达和建立个人品牌很有帮助。>>(好为人师不是错,知错就改好同志)
  • 在这里我整理了一份Android高级工程师进阶必备系统学习资料,需要的可以**点击【学习】**就能领取了!有想学习,提升自己的点进去看看 有惊喜哦!一定不会让你失望的。

★★★如何对待租房★★★

  • 首先请搜索此文章:怎么花最少的钱提升出租屋的格调? - Charles Stone 的回答
  • 其他:房租不要超过工资的1/3(日后供楼也是同理)跟谁一起租很重要,最好跟死党一起租房子,否则宁愿单住作为程序员,房子要能摆下一张大书桌!

★★★如何对待妹子★★★

  • 一般来说,公司里的妹纸更可靠>>(只是相对论而已)
  • 尽量找到共同的兴趣爱好>>(找不到?迟早出事)
  • 通过宠物勾搭,又快又多>>(狗男女就是这么回事)
  • 有花堪折直须折>>(最好的兄弟会对你说:承让)
  • 要学会怎么识别lcb>>(这是猛追三个月以后的else处理分支)
  • 没有我的火眼金睛?带她去游泳>>(咳咳,咳咳)
  • 无论娶或不娶,0.03就在那里>>(咳咳咳咳,不要淘)
  • 把妹比搞革命更困难,革命尚未成功,同志就仍需努力>>(身体是革命的本钱,把妹还要事业)
  • 三观一致挺重要的>>(这就是祖训的门当户对)
  • 在打算跟妹纸共度余生之前,最好离开双方家庭同居一段时间>>(独立生存能力挺要命的)
  • 后代的家教质量主要取决于女方,妹子的学历越高越好>>(要打我的妹纸们,有本事放开BB!)
  • 有BB之后,要祈祷不要被丈母娘坑>>(各种祖传秘方神马鬼,哈哈哈哈)
    跟妹纸共度余生之前,最好离开双方家庭同居一段时间>>(独立生存能力挺要命的)
  • 后代的家教质量主要取决于女方,妹子的学历越高越好>>(要打我的妹纸们,有本事放开BB!)
  • 有BB之后,要祈祷不要被丈母娘坑>>(各种祖传秘方神马鬼,哈哈哈哈)

http://chatgpt.dhexx.cn/article/jHhJffmu.shtml

相关文章

2019 Android开发工程师面经

文章目录 1. Java基础1.1 什么是乐观锁?1.2 volatile关键字1.3 hashmap 原理,红黑树是什么?1.4 jvm内存分配1.5 String,StringBuffer,StringBuilder 区别 2. 安卓基础2.1 安卓各版本大变化(Android 6.0到10.0有哪些大点变化),兼容适配2.2 热修复原理2.3 MVC,MVP,MVVM2.4 组件…

一个高薪的Android开发工程师需要具备什么能力?

前言 任何工作,任何行业想要拿到高薪都需要这几点条件,时间,技术,关系。 时间,无非就是在这个行业摸爬滚打很久有自己一套赚钱的方法; 关系,说白了就是家中有人帮忙铺路; 技术&a…

走心的中级Android工程师跳槽经验分享

这些经验是我最近四个月,从准备面试到找到合适工作的汗水和泪水,希望对你们能有帮助! define 跳槽跳槽前要思考的问题 钱不到位怎么办心委屈怎么办离职前的思考确定要走时需要做的准备行情怎么样 安卓跳槽需要复习的知识 基础知识进阶知识不…

寒冬已至?四面楚歌的Android工程师该何去何从

本文首发于 刘望舒的博客 地址:http://liuwangshu.cn/life/android-wheretogo.html 寒冬真的来了吗?可能是吧,因为最近几年每年都说是寒冬,说的真的叫人焦虑。不过互联网的整体环境确实不如前几年,即使不说我想大家也能…

如何成为一名合格的Android工程师?

首先需要申明的是,我并不是一名合格的Android工程师,无论从开发经验或者是技术水平上来说,我都没有资质承担以为Android工程师的责任,但是我把它作为一个目标,也一如既往的努力着。如果我的论点有不准确的,…

android工程师找工作都需要什么要求呢

不同的Android工程师的技术水平都有一定的差距,所在找工作的时候公司会对不同能力的Android工程师的岗位也会区分开来,分别是初级Android工程师,中级Android工程师,高级Android工程师三种,不同级别的Android工程师岗位…

面试复习——Android工程师之Android面试大纲

Activity面试题 1、Activity是什么 Activity是四大组件之一,它提供一个界面让用户点击和各种滑动操作,这就是Activity 2、Activity四种状态 runingpausedstoppedkilled 3、Activity生命周期 onCreate()onStart()onResume()onPause()onStop()onDestr…

如何通过自学成为一名 Android 应用开发工程师?

作者:陈昱全 链接:https://www.zhihu.com/question/21565227/answer/142800222 来源:知乎 1、初级之路 1.1 项目引路 对于自学的人来说,在边做边学的过程中是最容易起步的了。我的技术之路也是这样开始的,当年参加创…

如何成为一名合格的Android开发工程师——技能篇

前言 前段时间,一位计算机专业大四即将毕业的同学关注了我的公众号,然后问了我一系列的问题,表达出他对未来的迷茫: 我是一个二本科班的应届生,今年毕业,想知道需要掌握什么样的安卓技能才能参加工作&…

android开发工程师需要学什么?3年Android开发工程师面试经验分享,持续更新中

前言 咱们这行似乎每个人都有个常识:程序员做到35岁之后,职业道路就很窄了,但我不信这个邪,我今年37岁,依然活跃在开发一线,并且做到了月入四万+。 偶尔也有人问,你是怎么打破35岁…

Android APP应用工程师转Android Framework系统工程师(仅此一篇够了)

推荐阅读 干货|Android APP应用工程师转Framework工程师(仅此一篇够了) Android安全/逆向/系统定制 https://m.weishi100.com/mweb/series/?id1372437 Web安全/网络安全 https://m.weishi100.com/mweb/series/?id1373351 原创:哆啦安全,微信公众号​ Ubuntu系统…

系统Android开发工程师进阶指南,三个月学完,稳拿大厂offer

Android工程师想要成为架构师或想突破20~30K薪资范畴,拓宽技术的深度与广度是必经之路。我们千万不要局限在编码,业务,要会选型、扩展,提升编程思维。此外,良好的职业规划与学习习惯也很重要,但是最重要的还…

1.3 Android工程师的角色方向与定位

联系方式: 简书:WillFlow CSDN:WillFlow 微信公众号:WillFlow Android工程师的方向一般可以分为三类:专业方向、业务方向、操作系统方向。 个人认为对于初学者来说,一定要在开始的时候对各个方向有一个比较清晰的了解,然后有机会的话尽量按照兴趣来选择自

职业规划-Android工程师

Android工程师是指从事Android移动应用操作系统、游戏和各种Android平台功能的应用、开发和测试的技术人员。以手机开发为主要对象,包括但不限于手机操作系统、手机游戏、手机其他多种功能的开发和优化人员。 新手入门初级选手高级专家资深达人 一、新手入门 任职…

应用层协议 --- Telnet协议

Telnet 协议 Telnet 协议是 TCP/IP 协议族中的一员,是 Internet 远程登陆服务的标准协议和主要方式,它基于 TCP 协议,使用端口 23。 终端使用者在本地电脑上使用 telnet 程序,用它连接到服务器,终端使用者可以在 telne…

[计算机网络]应用层协议,HTTP,SMTP,DNS

应用层 应用层协议原理 网络应用程序体系结构 规定如何在各种端系统上组织应用程序,由研发者设计 客户机/服务器 服务器:对外提供服务的一系列硬件和软件 客户机:使用服务器提供的服务 服务器 7*24小时提供服务永久性访问地址/域名利用大量…

2 应用层 - 应用层协议原理

应用层协议原理 一、网络应用程序体系结构客户机/服务器 体系结构纯P2P 体系结构客户机/服务器与P2P的混合 二、进程通信客户机和服务器进程套接字(socket)进程与套接字关系 进程寻址进程识别信息(两部分) 用户代理(us…

HTTP协议:当下最主流的应用层协议之一,你确定不了解一下吗?

一.HTTP协议的含义 http是什么? 超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。‘超’可以理解为除了文本之外的图片,音频和视频,和一些其…

计算机网络应用层协议分析总结

 1、应用层协议原理 1.1、网络应用程序体系结构 C/S结构,有一个总是打开的主机称为服务器,它服务于来自许多其他称为客户机的主机请求。客户机主机既可能有时打开,也可能总是打开。C/S结构之下,客户机之间…

物联网应用层协议

物联网连接的七层协议如上图所示,从下往上分别是:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。 应用层网络协议(DHCP)是一种使网络治理员能够中心治理和自动分配IP网络地址的通信协议。IP网络中,每…