目前.NET/C#开发 目前主要开发 B/S 端、电子商务方向,一年工作经验,现考虑转方向 如下是我目前的技术栈
1.熟练掌握 C#、多线程基础知识。
2.熟练掌握 CLR 原理[对象创建过程、GC 、析构]。
3.熟练掌握 OOP 原则和常用设计模式。
4.熟练掌握.NET Core 、WebApi [IOC 、AOP 、RestFul 、鉴权、缓存、过滤器等]。
5.熟练掌握 Redis,有过深入了解。[哨兵、集群、缓存、淘汰算法、哈希槽、Skiplist 等]
6.熟练掌握 MySQL 基础知识和索引调优。
7.掌握基本数据结构与算法。
8.掌握内存泄漏排查、性能瓶颈分析和基准测试。
9.对分布式技术和分布式思想有一定了解[2/3PC 、TCC 、CAP 、BASE 、选举算法、负载均衡算法]
,对消息队列有一定的认知[Redis Stream/List]。
//////以下是目前能想到转方向的几个方案(如果有更推荐的方案请无视以下)
1.转 C#游戏服务端开发(技术栈几乎无缝切换,但没有对应领域经验。
2.转 Unity3D 开发(除了 C#其它都不符合,但对这个方向挺感兴趣的,门槛(学历 /工作经验)也比较低?
3.转 Java/Go (语言、框架、Runtime 无了解,Java 语法层面能看懂,中间件缺失一些(对比 JAVA Zookeeper 之类)
目前给自己定后两年的学习路线:
1.算法方面:《算法》第四版刷到熟悉程度 刷 Leetcode 到 Medium 的题到想想能 bug free 的程度
2.C#方面(如果没转语言的话):Expression tree,Emit,Roslyn 。
3.容器技术 Docker 、K8s 学到能熟练使用的程度,消息队列 RocketMQ+Kafka 。
4.Linux 、Azure(如果有条件的话)、Jenkins 、分布式+微服务 Nginx+Consul+Ocelot 组合之类的。
以上 还请大佬们给萌新指点一下推荐发展的方向及对应的分析,感谢。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.