软件工程师成长地图

programmer growth map

common seen path
common path
大多数程序员的晋升路径
并不复杂,无非以下几种:

技术型:初级工程师->中级工程师->高级工程师->架构师(技术专家)->技术总监->CTO

管理型:工程师->项目组长->项目经理->项目总监->技术总监->CTO

交叉型:初级工程师->中级工程师->项目经理->技术总监->CTO(此路线技术和管理交叉进行,每个阶段做的事情不固定)

转行型:初级工程师->转行产品、设计、销售、运营等

Junior Developer

  • 0-3 years
  • can write simple program
  • Preliminary understanding of an entire application lifecycle
  • Not comfortable in all parts of app

Senior Developer

  • 4-10+ Years of Experience
  • Can write complex applications
  • Good Design Skill and familiar with Design pattern
  • Deep understanding of each part of an app and lifecycle
  • Capable in writing every part of an app
  • Fast learning skill to get things done

Business Expert

work close on product:
working field

watch close on data:

ga

  • Almost same program skills as a Senior Developer
  • Very good at communication and understanding
  • Deep understanding of the lifecycle of an app
  • Know how and why in both business and tech
  • Challenge yourself and others ,often ask why and chase for a better way
    ref

Growth Hacker

growth hacker

  • Business Expert & Senior Developer & Data Analysis
  • Live with data
  • Ab test
  • Have the guts Deciding not to do
  • Always providing idea or better ideas
  • Good at script programming
  • Good at tools to improve efficiency

the skill of growth hacker
A growth hacker should be familiar with or have a background in as many of these categories as possible:

  • Product Management
  • Advertising, SEM
  • Usability
  • Viral Marketing
  • SEO
  • Coding, Databases & SQL
  • Web design & UX
  • Copywriting
  • Analitycs
  • Email marketing

Fullstack Developer

full-stack-developer
Field Cover:
cover
Skillset Cover:
tech cover
What's a fullstack developer?
Why -- Is it better to be a full-stack developer?
It’s more about having an understanding in each of the areas above, to communicate intelligently between team members and to be a good asset if the situation needs it.

Devops: Dev + Ops

Similar to fullstack, it means some skillset of different field -- especially in CI/CD
skillset

in today's cutting edge tech, simply can work with such skillset by the help of IaaS :
docker and CI/CD

Architect

architect as master craftsman

  • 7-10+ Years of Experience
  • Same program skills as a Senior Developer
  • know more than 2 or 3 program languages and tech stacks
  • Deep understanding of Network, Ops, and the whole computer system
  • Have great experience in handling high concurrency & high stability service

Manager / Leader

It's more that Senior Developer, which need more about soft skill

  • A good team player
  • Good GTD skill
  • Same program skills as a Senior Developer
  • Leadership: good at bring all developer together to divide and conquer
  • Very good at communication to all people(upper & peer & subordinate) and understanding
  • Extroverts is preferred
  • Agile skill

soft skillset
Agile experience needed
software traditional problem

Senior Leader / CTO

CTO

  • Same skill as Manager / Leader
  • Lead team work for the same direction
  • Problem solver
  • Always self driving & encouraging
  • Focus on people, Culture
  • Good at Risk management, Planning
  • Deem projects as business (ROI)
  • keep coding and commit to the side parts of the projects
    11
    CTO skillset required from quota

CEO

not that yet, TBC

how to reach the top in a quicker way

The best way to get it is to teach it
teach it

  • Learn by Doing
  • Learn by Following a master
  • Learn by Improving, Research
  • Learn by Teaching (less input , more output)
  • Little Yellow Duck
  • Write your side projects
  • Keep blogging / taking notes/ summary
  • Keep doing the above.

Conclusion

**Senior leaders are never born naturally. They are made(骨干是折腾出来的). It takes practice to be good about it. **
25岁-44岁职业上的发展课题应该包含:

  • 稳定于一项工作
  • 确立自己将来的保障
  • 发现适当的晋升路线

career path of a programmer
If you want to Learn something, Teach it

posted @ 2018-08-20 21:25  邓维  阅读(906)  评论(0编辑  收藏  举报