【程序员软实力】如何构建?我坚持了2100多天,收获了这些心得

2023-11-09 10:31

本文主要是介绍【程序员软实力】如何构建?我坚持了2100多天,收获了这些心得,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

导语 | 程序员的软实力体现哪些方面?技术输出对于程序员来讲,其意义有哪些?提升软实力的主要步骤是什么?坚持每天写作,对个人来讲,其挑战有哪些?如何平衡其与本质工作所占用的时间比例?腾讯云最具价值专家(TVP)杨建荣,坚持技术分享连续2100多天,我是如何构建自己的软实力的?来一起听听我的答案。

云加社区独家采访视频

受访者简介| 杨建荣,竞技世界资深数据库工程师,腾讯云最具价值专家(TVP),前搜狐畅游数据库专家,Oracle ACE,YEP成员。著有《Oracle DBA工作笔记》、《MySQL DBA工作笔记》,拥有十年以上数据库开发和运维经验,目前专注于开源技术,运维自动化和性能调优。拥有Oracle 10g OCP、OCM、MySQL OCP认证,对shell,Java有一定的功底。坚持每日通过微信、技术博客进行技术分享,已连续坚持2100多天。

 程序员的软实力体现哪些方面?

从我的理解来说,主要体现在三个方面。

第一个是态度,我们评价一个人态度最直观的印象就是这个人是否踏实,能够沉下心来学习,摆正自己的工作态度,做事不毛手毛脚,哪怕有些东西现在不会,但是保持一种空杯心态去学习请教,在团队协作中也会尤其占据优势。

其次是沟通能力,我个人理解可以分为两类,表达能力和社交能力。我们很多同学工作虽然做得好,但是不能把工作成果讲明白,其实在工作中是很吃亏的,可以适当的提高自己这方面的能力,同时能够做换位思考,站在别人的角度来考虑同样的问题,减少沟通中的分歧。另外一层就是社交能力,做技术的人都比较简单,不太善于社交,其实社交对我们很多人来说是线上线下的连接,比如参加技术大会,技术沙龙等等,可以结交很多朋友。

第三是心态,心态这方面我要表达的是两个,一个是开放的心态,善于总结,善于分享,愿意把技术成果分享出来;另外一个是包容的心态,对技术保持敏感,但是不偏激,能够用更理性的态度看待技术。

 技术输出对于程序员来讲,意义有哪些?

技术输出的形式蛮多,比如博客,技术分享,书,解答问题,等等。

对很多人来说,这是一个有价值的技术投资,一方面可以提升个人技术能力,在处理问题的过程中也可以很好的梳理自己的思绪;另一方面可以在后续帮助更多的人,实现从利己到利人的转变,在这个过程中自然会提高自己的影响力。

我有如下的四个建议,比较通用。

首先,要有一个清晰的规划。凡事预则立,不预则废,制定计划是给自己的一个心理暗示。给自己一个阶段性目标,然后把它做分解,拆分成为自己能够实现的一些任务。

对于规划,要有长期规划和短期规划,长期规划就是几年内希望自己有什么样的成长,同时短期内希望达到什么目标,都可以做到统筹。一种行之有效的方法就是:拿着若干期望的目标,然后反推过程,应该怎么去落实,实践效果要好一些。

其次,建立技术连接的思维。我们很多同学就是专注在了技术线,对于某一个技术有较为深入的学习,但是对于其他方向的技术却有欠缺,这样很容易形成技术壁垒,思考问题的方式也会更局限于你所熟悉的方式和领域,对成长是不利的。我们不要钻牛角尖,不要什么都要用MySQL来实现,面对需求,永远没有最好的数据库,只有最适合的业务场景,一旦你开始更理性的思考,你才会更接近于问题的本质。

再次,充分利用碎片时间。有很多人说,我现在可忙了,没时间。其实细细观察,总是会有很多的碎片时间:早高峰、午饭后、晚高峰、晚饭后、睡觉前,这些都是碎片化相对集中的时间,可以充分利用起来很多的事情。

最后,多参加社区、社群的活动和技术交流问答。对于参加社区、社群活动,自己也是深有感触,可能技术圈子的人性格相对比较内敛,在技术上态度还是开放的。多参加一些社区、社群的交流,可以让自己少走很多弯路,因为不是所有的坑都需要你完整地踩一遍,而在这个过程中你收获的不仅仅是知识,还可能是友情。

技术分享之路上的故事

要说写博客的初衷,其实最早是出于利己的考虑,经常在处理问题的时候,要反反复复查一些资料,问题解决了之后,发现处理思路没有沉淀下来,导致后续再碰到问题的时候,又得花费同样的时间解决类似的问题,所以早期的博客写作就是为了完整的模拟整个问题。同时我听说人的习惯在一段时间之后才能够养成,我也是带着试试看的态度在大概2014年2月的一天开始了技术博客连更之路。

随着博客的内容量越来越多,有些网友在博客和我的互动也越来越多,我发现原本是利己的事情慢慢变得利人了,这是我在起初没有预料到的,而这个过程需要时间的沉淀。

有时候在技术大会上,很多朋友会主动上前来打招呼,或者问我是不是公众号的作者,很多朋友我们之前都未曾谋面,通过线下的方式建立了连接,这对于我来说是一件很欣喜的事情。

要说感动,其实有很多,公众号的内容不是冷冰冰的,而是每天糅合了我的一些工作心得,当然也包括一些情绪化的东西,我总是会不经意收到一些朋友的留言感谢,这对我来说,不是超越技术本身了,此外我写公众号的过程中也会产生一些收入,我把所得几乎都捐给了慈善项目,加上我额外的捐赠,目前已经捐助了数万元,30多个公益项目,当收到救助的感谢来信时,是让我最为放松的时候

在坚持的路上,和很多读者的支持是分不开的,在2016年6月,我完成《Oracle DBA工作笔记》,汇聚了近800天的学习笔记,目前已经重印7次,在2019年8月份,我完成了《MySQL DBA工作笔记》,目前大家的反响都还不错,这些大力支持我的人,是我前行路上的有力后盾,我内心除了感激就是感动。

 挑战,平衡,与坚持

这个过程中,我所写的内容也不局限于技术,有时候也包含一些生活感悟,从最开始的满腔热情,到融入成为生活的一部分,这其中的挑战还是很多的,其中一个挑战就是平衡和工作的关系。

尤其是近些年,发现对于体力的挑战更为明显,对我来说,在每天23:59之前能够完成博客就是一种记忆打卡,有时候甚至会坐着睡着,很多朋友好奇我这么为难自己是为什么,其实就是给自己的一个任务而已,因为不需要做其实有很多的原因,而要做其实需要需要的原因很简单,当然在这方面,我也在调整,尽可能把时间往前赶。

现在工作的压力也不小,在时间和工作的平衡上,也是一大挑战。我是尽可能不占用工作时间,基本上是在晚上10点以后孩子睡觉之后开始技术写作的,从10点到12点,看起来有两个小时,但是我已经记不清有多少次在电脑面前没有任何思路,多少次想放弃了,咬咬牙似乎都能坚持下来。

分享的目的就是知识和经验传播,要写出一篇有技术含量的文章其实不是特别难,花点时间,多做些测试都可以达到,但是如果要持续输出我觉得是很难的。我基本上每天都会记着这样一件事情,今天写点什么,今天分享点什么,带着这个想法我会重新看待自己的工作和生活,同时这样约束自己持续产出。

技术分享可以作为一个人的习惯,如果习惯了分享,其实就逐步适应了这种节奏,不光在写博客方面,很多技术演讲也是如此,很多技术知识点都可以很快熟悉起来,而且技术产出也会更快,这是一种通过效率提高数量和质量的方式。

 未来会重点关注哪些技术?

分享,是推进技术发展的助推器,我非常赞同这个观点,技术分享可以作为一个人的习惯,如果习惯了分享,其实就逐步适应了这种节奏,不光在写博客方面,很多技术演讲也是如此,很多技术知识点都可以很快熟悉起来,而且技术产出也会更快,这是一种通过效率提高数量和质量的方式。

在后期,我会更加关注如下的几个方面的内容:

1.智能运维;智能运维在国内其实提的也蛮早了,落地的场景也有一些,在这方面也是技术的与时俱进,随着技术趋势而转型和改变吧,未来这方面的需求会越来越多,长期来看我是比较看好的。

2.开发技术;很多传统的运维同学缺乏开发技术,在处理很多问题时容易形成瓶颈,我是不喜欢拘泥于一种技术,而是喜欢折腾的一个人,在这方面我比较喜欢Python、Java、Go语言方向的开源项目。

3.数据库高可用技术;对于数据库技术来说,高可用是一个可以持续讨论和改进的技术方向,随着业务需求和技术的发展,高可用技术和方案层出不穷,如何更好更稳定的支撑业务,是技术之本。

4.数据库内核技术;这个也是让自己具备更多的主动发言权,很多技术细节不是刚用,而是需要深入技术细节来洞察本质,这个阶段对很多人来说会很难,我希望投入一些精力做这样的一些事情。

 关于TVP

TVP是一个很有活力的专家项目,能够成为TVP的一员也让我觉得非常的幸运和自豪,从2018年至今我参加了一些TVP的技术分享和活动,整个会议的内容质量很高,而且有很多腾讯的专家资源助阵,在此希望TVP项目能够在更多技术专家,技术圈朋友的努力下,融合更多专家资源和技术力量,在技术领域持续发声。

640?wx_fmt=gif

这篇关于【程序员软实力】如何构建?我坚持了2100多天,收获了这些心得的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/375593

相关文章

一文详解如何从零构建Spring Boot Starter并实现整合

《一文详解如何从零构建SpringBootStarter并实现整合》SpringBoot是一个开源的Java基础框架,用于创建独立、生产级的基于Spring框架的应用程序,:本文主要介绍如何从... 目录一、Spring Boot Starter的核心价值二、Starter项目创建全流程2.1 项目初始化(

使用Java实现通用树形结构构建工具类

《使用Java实现通用树形结构构建工具类》这篇文章主要为大家详细介绍了如何使用Java实现通用树形结构构建工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录完整代码一、设计思想与核心功能二、核心实现原理1. 数据结构准备阶段2. 循环依赖检测算法3. 树形结构构建4. 搜索子

使用Python和python-pptx构建Markdown到PowerPoint转换器

《使用Python和python-pptx构建Markdown到PowerPoint转换器》在这篇博客中,我们将深入分析一个使用Python开发的应用程序,该程序可以将Markdown文件转换为Pow... 目录引言应用概述代码结构与分析1. 类定义与初始化2. 事件处理3. Markdown 处理4. 转

Java使用Mail构建邮件功能的完整指南

《Java使用Mail构建邮件功能的完整指南》JavaMailAPI是一个功能强大的工具,它可以帮助开发者轻松实现邮件的发送与接收功能,本文将介绍如何使用JavaMail发送和接收邮件,希望对大家有所... 目录1、简述2、主要特点3、发送样例3.1 发送纯文本邮件3.2 发送 html 邮件3.3 发送带

Python结合Flask框架构建一个简易的远程控制系统

《Python结合Flask框架构建一个简易的远程控制系统》这篇文章主要为大家详细介绍了如何使用Python与Flask框架构建一个简易的远程控制系统,能够远程执行操作命令(如关机、重启、锁屏等),还... 目录1.概述2.功能使用系统命令执行实时屏幕监控3. BUG修复过程1. Authorization

nginx-rtmp-module构建流媒体直播服务器实战指南

《nginx-rtmp-module构建流媒体直播服务器实战指南》本文主要介绍了nginx-rtmp-module构建流媒体直播服务器实战指南,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. RTMP协议介绍与应用RTMP协议的原理RTMP协议的应用RTMP与现代流媒体技术的关系2

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

Golang使用etcd构建分布式锁的示例分享

《Golang使用etcd构建分布式锁的示例分享》在本教程中,我们将学习如何使用Go和etcd构建分布式锁系统,分布式锁系统对于管理对分布式系统中共享资源的并发访问至关重要,它有助于维护一致性,防止竞... 目录引言环境准备新建Go项目实现加锁和解锁功能测试分布式锁重构实现失败重试总结引言我们将使用Go作

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了