大家平时是怎么去学习的,因为工作时间是互联网行业,肯定加班都比较多,大家如何在业余时间或是周末,亦或是上班划水的时间,去提高自己的技术?或者是什么方向?比如测试栈、开发栈、新技术、其他互联网知识、以及生活的理财、锻炼
等。
首先讲一下我自己,我自己在一家公司做车载嵌入式测试工作。提升自己主要是 2 个时间点,一个是平时项目忙完的时候可以提升下,自己在组内安排一些培训,提高组员和自己的能力,其次就是业余时间的话主要是周末,还有平时下班的时间,可能会看一些博客和论坛。也就是微信上的一些技术文章。
我都是尽量在工作中提高自己,在工作中发现可以优化的地方,一步一步在工作中提高自己我觉得是最好的。 比如刚来公司的时候是没有自动化部署的, 所以自学 docker,推行容器化部署。 后来团队越来越大, 环境越来越多,要好几台机器上部署很多套环境。 效率越来越差, 所以自学 k8s,全面在测试环境中推行容器编排。 后来产品架构也接入 k8s 并推行微服务, 于是我提出混沌工程和稳定性测试,学习 golang, 调用 k8s 的 client-go 开始开发故障注入工具和稳定性测试工具。 后面为了优化用户提现,又开始学习开发 k8s operator。 就在容器这一条技术栈上, 我一直是在想办法发现目前团队中可以优化的地方, 然后学习新的东西去实践优化。 比如我这两天发现团队中做性能测试的时候针对 jmeter 的痛点, 比如想搭建稳定的分布式 jmeter 压测比较耗时, 比如没办法实时的看 tp99 tps 这些指标只能等测试完了才能看。 所以我针对这个痛点, 现在正在调研在 k8s 上一键部署 jmeter mater/salve influxdb grafana 的这套测试架构。只要成功了就可以提升不少性能测试的效率。
我一直觉得测开要有产品经理的能力, 要会给自己找活, 不断发现优化点,然后去学习去实践。 不要等着别人告诉你要做什么。
这样的生活方式会比较累,看个人喜好,仅供参考,有的人 8 小时之外绝不做工作相关的事情。每个人做的事情其实大同小异,差距还是在 8 小时之外
技术提升,有一个方向 可以插入,就是提高自己的英语水平;毕竟代码是英文 ,一些新型的 事物 ,都是英语单词,很多时候 感觉亲切 就是不理解意思,如果不信 你可以试试 ,100 的代码 你翻译成中午 看看好理解不
在同等的工作量和业务节奏下面,分步朝着如下目标迈进,手段不限:
1、加班把自己的活干好
2、不加班把自己的活干好
3、用自己的闲暇时间帮着大家一起把自己团队的活干好
4、帮着大家一起不加班
5、跟着/带着团队帮着跟自己有合作关系的团队,让他们跟自己的团队协同的时候也能高效
足够提升了吧,这目标感觉够干到退休了
深陷业务中是任何人都很难规避的现实。 但从另一个方面看, 就可以多思考怎么能用一些技术手段提高自己的效率, 让自己可以多一点时间去做别的。 这是循环, 就看是良性循环还是恶性循环。 良性循环就是:业务忙-> 挤时间做工程提效的东西 -> 效率提升-> 业务压力减轻-> 有更多的时间做工程提效。 我的经验看我们这里就是这样的。 一开始我们也没时间搞这些东西。 所以那段时间就挤时间去写自动化, 那一个十一期间, 我们光 UI 自动化就累了好几百, 总数破千, 直到现在 UI 自动化破 2000, 有了这些自动化垫底 ,我才有时间去做别的。 怕就是恶性循环。 越是忙,越没时间研究技术做工程提效, 然后就更忙。
当然还有一个很重要的东西是, 你需要先研究出一定的成果来跟大家证明你做的这些是有价值的。 这样领导才会给你更多的时间和资源来做这些。 我对这个事情感受颇深。 我原来是 100% 业务的, 后面领导是看到了我做的这些东西越来越有价值, 所以慢慢的把我从业务中抽离出来。 直到现在让基本上大部分时间都专注在工程效能了。
一台机器就能学, mac 本都能搭个单机版的 k8s 集群。 你可以了解一下 kubeadm, minikube, kind。
想把一件复杂的事情做的简单高效
想把一个事情从好做到更好
你差的不止是一个想法,而是坚持实现这个想法的坚持和努力