计算机科学与技术专业的学生要怎样做才能避免成为低级的码农?

本文强调了扎实的计算机基础知识(如网络、操作系统、数据库、数据结构与算法)的重要性,并指出理解与实践是关键。提到了分布式系统、机器学习等领域作为兴趣方向。建议熟练掌握至少两种编程语言,并广泛涉猎Linux、数据库、消息队列、大数据等技术。同时,强调实习经验、系统设计能力和面试准备对于成为高级开发人员至关重要。
摘要由CSDN通过智能技术生成

欢迎关注我的知乎账号进击的steve - 知乎

扎实掌握计算机基础(四大课程:计算机网络,操作系统,数据库,数据结构与算法),不光是要应付考试,要真正理解并能举例解释

程序员计算机基础面试解答
数据结构与算法

+一些自己感兴趣方向的知识(分布式系统,机器学习,深度学习,计算机视觉,自然语言处理等)*其中如果做开发而并非算法的话,(机器学习,深度学习,计算机视觉,自然语言处理)并不是必要知识

悄悄说一句:其实现在就算是算法岗,需求量最大的方向也是:搜广推(搜索,广告,推荐)

2020 MIT 6.824 分布式系统
​[中英字幕]吴恩达机器学习系列课程
[双语字幕]吴恩达深度学习
fuma的NLP妙妙屋

熟练掌握两门以上语言(Python,Java,Golang,C++等)初学看视频,熟练看官方文档

[小甲鱼]零基础入门学习Python
​Python官方文档
8小时转职Golang工程师(如果你想低成本学习Go语言)
Golang官方文档

拓展自己的技术栈:

Linux & MacOS,Shell,...

消息队列:Kafka, RocketMQ,...

关系型数据库SQL: MySQL,Oracle ...

非关系型数据库NoSQL: Redis, MongoDB, ElasticSearch, HBase, ClickHouse...

缓存:Redis, MemCache, ...

大数据:Spark, hadoop, Hive, ...

其他:k8s, nginx或是其他web框架或是一些前端,客户端,游戏开发技术

鸟哥的Linux私房菜
MySQL 三万字精华总结 + 面试100 问,和面试官扯皮绰绰有余(收藏系列)
​十分钟入门Spark概念与原理

系统学习设计模式这门课,提高开发效率和代码可读性:

《Head First 设计模式》​book.douban.com/subject/2243615/

推荐一本书《代码整洁之道》

《代码整洁之道》​book.douban.com/subject/4199741/


尽量多地充实实习经历

看牛客网上刷阿里字节腾讯快手美团滴滴等大厂面经,哪里不懂Google哪里,或者知乎搜关键词,直到自己懂为止,逐步扫盲,慢慢地实力就上来了,有了实力不愁没好的工作offer

最后上重头戏!区别普通开发与高级开发的门槛:系统设计能力

系统设计就是老生常谈的后端服务架构,结合场景进行模型设计之类的。

如果前面的都是新人的重点:微观技术

那么这个就是高级开发的重点:宏观技术

系统设计​www.zhihu.com/column/c_1459922831047462913

在系统设计里面,没有任何一种设计是打遍天下无敌手的。任何一种服务架构,模型设计,都要紧密结合具体生产场景。

比方说,数据量不大,对实效性要求不高,但要求强一致性场景。数据量很大,并发量很高,但允许弱一致性的场景。

如果用一张图概括系统设计是什么?

我的原知乎回答链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值