当前位置:网站首页>Working for 9 years!
Working for 9 years!
2022-07-29 19:15:00 【programmer little gray】
One of Xiaohui's friends is Microsoft's tech giant,I have been working at Microsoft for nine years now.今天,I brought one of his articles,It summarizes his thoughts and insights in the past nine years of work,希望对大家有所帮助.文中的“我”不是小灰,but this friend.
不知不觉间,I've been working for nine full years,For the nine years of work,I would like to sum it up in two points:第一,职业生涯很长,不必急于一时.第二,Always have enough energy.
If only one word,That is the self-requirement of myself as a professional that I have mentioned many times in the past.——To be a healthy professional.在此,Share this old image again,I've been doing this all the time and I've benefited a lot from it.

I try to talk about my insights by looking back at my professional development in the past nine years.,Thousands of thoughts at once,难以收敛,Then the paper notes under the emergent ideas in mind,Then I simply wrote this article,An article filled with a lot of nitty gritty ideas.
实话说,I don't think these ideas are new and shocking,Or I don't want you to feel that way after reading it,I hope you will more firmly believe and practice some simple concepts after reading.
I don't think all my opinions are correct,or for all specific scenarios,Even their own future could overturn some I wouldn't be surprised.I hope to express what the current cognitive level thinks is correct,同时,Very welcome to different points of view to help me break through the mind-set.
About professional ability(专业、技术和技能)
相比程序员.I prefer to be called software(开发)工程师,because it more accurately describes my job and responsibilities.
软件(开发)Engineers not familiar with software engineering,even underestimated or ignored,is a very incompetent thing.要记住,Functionality is always the result of integration,而不是实现的结果,And integration is more about engineering.
I don't like a particular programming language、工具和技术,I don't want to be their preacher,我主要关注How they can be used to solve problems in your field.This does not prevent me from admiring those excellent preachers.
Programming languages are really slow,From the perspective of language paradigm.Those who are worried that there are too many programming languages to learn may not have studied and used a language seriously.
R&D is often a complex issue rather than a complex one.Just do the coding carefully、构建、集成、发布,and the tests that each link should have,This succeeded for the most part.If you don't know anything about these,Then try to seriously design and implement an application.
Helps understand the complexity and uncertainty of software systemsCynefin模型

To understand a person's technical capabilities,from him/What technology stack did she implement and what programs did she use?、Service or Application Departure,instead of knowing how many tech stacks.
Algorithms and data structures matter,Status as a subject in mathematics.然而,Partial subjects are definitely only suitable for the top few people,At present, technical interviews generally focus on investigation“奥数题”It's definitely a big mistake.
测试很重要,Because the correctness of the current software still needs to be verified by testing.然而,From the interview experience of the past few years,Very few people have a good habit of testing,enough to form a watershed between the good and the bad.
Every good software engineer should strive for engineering excellence(Engineering Excellence).简单来说,the pursuit of agility(快、stability and safety).
Writing code frequently is not necessarily a good thing,Especially when this part of the code should not be so unstable.
Don't fall into the automation trap.Only mature and stable processes can be effectively automated.Automation is not a natural solution to process chaos,On the contrary, it is easier to increase the cost of implementation.Machines are not yet more flexible than humans,It is quicker than a man,Provided it does the right thing,It can't go to repair the wrong thing.
If you can become familiar with and solve most of the technical problems at hand,That's already an expert.
If you feel that there is no technical difficulty in doing something,Then think about how to implement non-functional indicators2/5/10倍增长.If nothing can be done,That means you are not really familiar with the technical field you are in..
完成比完美更重要,especially for the software world.因为软件的“软”It is easy to approach perfection through iteration with less cost,And at the beginning the pursuit of perfect is more likely to deviate in the right direction.
Both functional and non-functional requirements,It is important to measure and track goals with quantitative metrics.If the indicator is not credible,The problem it brings can be about as serious as no indicator.
Should not be split view of the vocational ability,Especially for hard and soft skills.Complete professional ability definitely requires both soft and hard.其中,The core is problem-solving skills.
要有Skill mentality——Any valuable skills has a long development process from entry to master it.
Multi-Tasking是一种能力,rather than a good state.好的Multi-TaskingAbility is not able to how many tasks at the same time,And in able to continue to complete the tasks one by one.
Many strategies for optimizing computer efficiency also apply to the human brain,such as defragmentation.
Both people and systems,The key to continuous improvement is to create a stable and efficient feedback loop——执行、反馈、反思和调整.
Control can control by yourself,Observing what affects youAnd establish a sufficiently sensitive risk detection and emergency mechanism.
Handwriting is a wonderful but underrated method.If you can't figure it out, try to write it down,Even if it's just some key words.包括代码.
Communication is a core skill,need to continue to learn and improve.
When complaining that too much communication interferes with normal work,The source of the problem is usually more likely to beToo little effective communication.At this time, the first thing to do is to communicate more and more fully,Instead of deliberately reducing communication time.The latter usually doesn't solve the problem,But only have hidden problems,even worse consequences.
关于职业发展
Career should be long,We should be able to know the people around you.如果不能,Then I suggest changing the environment.
Faced with the choice of a new job, should you choose to follow people or things?Although my past experience is biased towards being with people,But I don't think there should be a fixed answer,I don't even think that the two options are definitely a plus and a minus.May choose a themselves don't regret is enough.
Three factors affecting promotion include performance、Ability to match the next rank,和预算/位置.三者不可或缺.然而,The only power you can control,At the same time, we always tend to overestimate their influence on the performance,And underestimate the budget is likely to change.
Software engineer career development model

Don't let the level of rank define and limit yourself.Changes in rank often lag behind competencies and responsibilities.
Focus on your business control more than your actual responsibilities.When your business control exceeds the scope of responsibility,You have the opportunity to make more contributions,and take on greater responsibilities.If your business control is less than the area of responsibility,The good news is that you have a very clear direction for improvement,The bad news is that you're not doing well enough with your current responsibilities(你必须承认这一点).
每次被问到,What to do if you can't learn knowledge at work,I am amazed that they don't worry about work at all.我想,Solving problems at work alone is usually enough to guarantee learning(Effective continuous learning70%From solving problems at work).
concerned about the average,Usually below the average.
关于职场
Workplace problems are essentially interpersonal problems.We spend 60-70% of our lives working,Unhappy relationships are a very painful thing.
Only by establishing a good psychological safety environment,People are willing to share ideas and questions.
Building trust is critical,The first thing is to be honest.对自己坦诚,Honest to others,Others can be honest with themselves.
The spirit of struggle and the spirit of cooperation do not conflict,The most fundamental issue is interest.To know how to seek common greater interests.查理芒格说,“If you want to convince others,要诉诸利益,rather than appeal to reason.”
随着mentor的人越多,The more opportunity you have to feel the joy of helping others,At the same time, the more opportunities to learn the good from others and be happier.
When you are angry at the unreasonable words and deeds of others,先冷静下来,Consider whether the other person has a situation you don't know about,to communicate with others,Clarify and resolve real conflicts.This really helped me clear up a lot of unnecessary misunderstandings.
Management cannot be seen as control,Fundamentally, we can manage only ourselves,either upward、Down or level management.
To do a good job of self-management is nothing more than managing the matching of abilities and expectations:Know what you can do to help others,what others can help you,What do you want others to help you,Know what others want you to help.
Think more about how you can do better,How to do less and get as good results,including making yourself do less,Also includes getting customers and partners to do less.
关于生活
good health above all else.Make time for cardio and strength,To maintain a regular and balanced diet,have adequate rest,to maintain good physical fitness.
工作生活平衡(WLB)Say that is not a time of distribution like libra on both sides to be balance,It is time the balance between the allocation and self expectation.Everyone expects a different balance,Even the balance that the same person expects at different points in time is different.It is unrealistic to pursue a balance that is the same for all,Nor is it conducive to diversity and inclusion.
WLBis the result of good time management or energy management,It is not a situation that can be naturally obtained by joining a certain company or a certain department.
Regularly ask yourself what you want to be, or don't want to be what kind of person,This helps us make many big decisions with more confidence.
Growing up is not knowing more and more,but more and more.It's like the truth of life,Know but can't do is chicken soup,From knowing to doing, to understand and stick to practice.
To live and work with reinforcement learning strategies:Get feedback from established mechanisms most of the time,while leaving a small amount of trial and error to explore more possibilities.
Twitter work JiuZhou years could go so far.Although it's really messy,I also think there are many aspects that have not been discussed,但完成比完美重要.
Thank you for your patience to read to the end.If any of the words above helped you,I think this article is worth it.
If you have any thoughts and opinions,欢迎留言区交流.
边栏推荐
- 不惧AMD及Arm挑战,英特尔称霸服务器市场的秘诀是什么?
- 【QT】Qt获取前几天/后几天的时间
- 银行有没有必要建立数据中台?看完你就明白了
- EasyNVR更新版本至(V5.3.0)后页面不显示通道配置该如何解决?
- 腾讯开源摘星计划培养开源贡献者的实践思考
- 《STL 源码剖析》学习笔记之容器(二)list
- centos8安装mysql8.0.28
- One's deceased father grind English vocabulary training camp Day 】 16 - bankrupt, remain, regulate, the construct and reflect
- sticky定位后设置right:0不生效
- 一次挖矿程序的清理(回忆版)
猜你喜欢

一文了解信创背景下 SAN 存储转型路线

One's deceased father grind English vocabulary training camp Day 】 16 - bankrupt, remain, regulate, the construct and reflect

5年迭代5次,抖音推荐系统演进历程

招聘|字节跳动云原生计算,期待你的加入

2022开放原子全球开源峰会OpenAnolis分论坛圆满落幕

ECCV 2022 | AirDet:无需微调的小样本目标检测方法

【盘古Coder】:高性能函数级程序语言生成模型

为什么你的分布式数据中心需要一个全栈智能运维平台?

解决 @RefreshScope 导致定时任务注解 @Scheduled 失效

五种常见IO模型
随机推荐
7行代码让B站崩溃3小时,竟因“一个诡计多端的0”
500强企业研发效能提升课,今晚开课啦!
R语言使用treemap包中的treemap函数可视化treemap图:treemap将分层数据显示为一组嵌套矩形,每一组都用一个矩形表示,该矩形的面积与其值成正比
吴恩达撰文:公共数据的 “围墙”
scroll bar style
字节跳动 Flink 单点恢复功能及 Regional CheckPoint 优化实践
多线程并发Callable
京东方Q1净利将超50亿!手机、电视等五大显示屏出货量全球第一
工作9年了!
【7.23-7.29】博客精彩回顾
请问跑sql任务调度必须得设置依赖的上游节点嘛?比如说我sql里面a b两张表join出来的结果写入
Security整各Gateway后配置不生效?
Make a file upload progress bar
实时数仓:咸鱼的实时数仓经验分享
sticky定位后设置right:0不生效
UG安装出现Server Start Failed. The Server May Already Be Running!!解决方法
MySQL数据库的七种约束语法格式和使用详解&约束的总结
[转帖]为什么收入越来越少?
62页智慧冷链产业园整体解决方案2022
实时数仓:知乎实时数仓的架构演进