突然闲下来没事干,开个贴回答互联网后端技术问题

2019-10-27 21:13:24 +08:00
 axb
我是做什么的:微博系统开发资深技术专家,曾经负责过微博消息箱、直播互动(非一直播)、视频(非秒拍)的后端服务。

我能回答的:互联网后端工程、程序员工作相关的问题

不能回答的:微博的交互、运营、产品、来去之间等等技术无关的问题,我没有发言权,涉及到微博内其他团队的针对性技术问题我也无法回答。
20709 次点击
所在节点    问与答
221 条回复
axb
2019-10-28 00:07:58 +08:00
@shiny 微博有 golang 这块应用吗?

微博的部门很多,每个部门情况不一样。在我这边有一部分 golang 的线上应用,也有一部分管理系统用的是 golang。
CODEWEA
2019-10-28 00:14:26 +08:00
类似”点赞“这种业务,技术上或者模型设计上有什么经验可以分享下吗?
xiaowangge
2019-10-28 00:20:59 +08:00
你所在部门 /团队的技术栈大概是怎样的?
比如说:编程语言、框架、中间件等等

谢谢~
jason19659
2019-10-28 00:24:48 +08:00
很多公司要求的大数据高并发经验,在小公司工作的机会永远用不到的如果才能通过这种 offer
cinlen
2019-10-28 00:38:30 +08:00
一个合格的 5 年后端要具备哪些能力?
695975931
2019-10-28 07:59:20 +08:00
哈哈,秦老师在微博吐槽没人投简历了。。
axb
2019-10-28 08:06:05 +08:00
@CODEWEA 类似”点赞“这种业务,技术上或者模型设计上有什么经验可以分享下吗?

这个问题太宽泛了,我不知道你想问什么
axb
2019-10-28 08:08:42 +08:00
@xiaowangge 你所在部门 /团队的技术栈大概是怎样的?
比如说:编程语言、框架、中间件等等

点我头像看我发的招聘帖,可以当技术栈演进来看……
haosamax
2019-10-28 08:17:09 +08:00
大佬好,关注了您的微博,请问 估算一个对象的大小,这问题意义在哪?
axb
2019-10-28 08:25:30 +08:00
@jason19659 很多公司要求的大数据高并发经验,在小公司工作的机会永远用不到的如果才能通过这种 offer

分两方面说,很多地方招聘(包括我这边)虽然更倾向于有高并发经验的人,但是这也不是个绝对的必选项。我的判断条件是“是否达到了所在平台的天花板”和“是否有持续进步的潜力”,大部分情况下,能把当前工作搞的很好的人,也能把高并发搞的很好。

另一方面,我一直认为能去大厂还是尽可能的去大厂,毕竟大厂能带来的经验和提升很多小公司确实没有。通过自学能储备一些知识,网上的教程也有不少,不过经验的差距很难解决。

简单来说,把自己想象成应届生,工作几年没有高并发经验和应届生没有工作经验面临的状况是类似的。
axb
2019-10-28 08:32:28 +08:00
@cinlen 一个合格的 5 年后端要具备哪些能力?

这问题有些宽泛,一线互联网公司的五年跟不知名公司的五年,完全不是一个概念。

我只说一线互联网公司的五年,基本上应该是小组长,能够独立设计日活百万级别的后端系统架构,在开发规范和效率方面能够指导初级工程师和工作。此外还有复杂问题的分析和解决能力。
axb
2019-10-28 08:35:15 +08:00
@haosamax 大佬好,关注了您的微博,请问 估算一个对象的大小,这问题意义在哪?

没看懂你的问题,是说 jvm 里的大小还是序列化后的大小?前者一般是面试的时候考查对 vm 的理解,后者是缓存容量评估。
crclz
2019-10-28 08:41:30 +08:00
如果想往架构师方向发展(不做普通码农),应该是什么样的学习路线?我之前大致都了解了前后端的很多技术,但都不精细。我前段时间才发现自己在数据一致性上面忽略了很多东西;前几天才发现有个叫 DDD (领域驱动设计)的东西,学了以下发现以前写的思路很丑陋。所以有什么学习路线?(或者能不能给一些专有名词)
5fn3t2E7BzJw1y62
2019-10-28 08:48:28 +08:00
@Rwing 因为大厂用 java
5fn3t2E7BzJw1y62
2019-10-28 08:49:15 +08:00
@ebony0319 列表?
Akiyu
2019-10-28 09:14:46 +08:00
可否分享一下平常浏览的技术站点?
sonyxperia
2019-10-28 09:42:07 +08:00
@Akiyu #95 楼主的博客有书单和站点分享的。
guchengyehai1
2019-10-28 09:54:49 +08:00
露珠提到的分布式文件系统同步与索引的问题,似乎在某种程度上与虚拟机内存回收算法类似,堆内存在线程间共享,而内存的回收从线程的角度看其实有点分布式的特点
fhvch
2019-10-28 09:58:55 +08:00
你们团队有测试开发吗?如果有,请问他们都做些什么工作?他们的技术栈大概是怎么样的?
mikulch
2019-10-28 10:02:34 +08:00
axb 大佬以前逛 nga 的吧?很久不上那个论坛了居然在你这儿看到了。


初期的优化主要集中在功能上,不写 bug。
然后是鲁棒性,在异常情况下不写 bug。
然后是性能,提高系统吞吐量,或者执行降低延迟。
然后是可维护性,在团队开发过程中降低其他人的理解难度,再做好一些,通过设计做到模块解耦,降低删除无用代码的难度。
然后是可扩展性,能够预测系统或者业务的发展方向,提前设计好锚点,让系统能够通过扩展而不是修改的方式增加功能。

做到健壮,易读的,清晰的代码和简明的,维护和扩展想良好的设计其实挺不容易的。

国内不少程序员喜欢折腾很多高大上的东西,各种钻底层,谈概念,说起来头头是道。结果最后一看他写的代码,没有规范,并且大量的冗余逻辑和莫名其妙的,完全不考虑团队合作的设计,专门把很简单的事情搞的非常复杂,这种人太多太多。。。

个人感觉,可维护性,可扩展性,鲁棒性,不单单和技术有关,还和一个人的其他素养有关。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/613460

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX