我眼中的技术地图

IPD系列(1)—技术地图 技术地图简介 技术地图是支持产品开发有利的工具,也是技术可以被广泛、高效应用的基础。技术地图构建可以更好推动公司的核心技术、关键技术的发展,减少重复技术开发工作。          对于公司,技术地图不仅包含公司自己的核心技术、关键技术和通用技术,也包含了成熟开源技术和第三方的商业技术。          技术地图可以帮助产品经理、技术经理、系统架构师、系统分析师、项目经理等决策人员,快速判 阅读详情

点击上方“芋道源码”,选择“设为星标”

管她前浪,还是后浪?

能浪的浪,才是好浪!

每天 8:55 更新文章,每天掉亿点点头发...

源码精品专栏

 

来源:cnblogs.com/Fredric-2013

  • 工程方法领域

  • 系统集成领域

  • 项目管理领域

  • 研发领域


一晃研究生毕业参加工作也已经8、9年,这些年搞过嵌入式、web开发、移动应用、IT咨询、项目集成,零零种种到如今也不知是好事还是坏事。今天几个项目进度不错,上线的版本问题居然还没有问题反馈,真是XX都笑歪了。

抽下午的时间把自己这些年的技术梳理出来,能力有限,只算是罗列一些点吧(当然只要我列出的,多少是我个人在实际项目中接触过的),希望能给不管是新入行,还是试图做转型的从业者带来一些帮助。

大致分为四类,详见文末思维导图:

工程方法领域

工程方法领域的积累,其实不仅仅包括软件产品的开发,它对硬件类,集成类项目都有指导意义。 我个人理解这部分的第一个难点就是对需求的描述,从表面上看你需要积累的是如何用用例图、时序图、状态机等方式去描述需求,形成需求规格,从内在看,关键在于从不同的角度理解需求,比如站在用户角度,和站在产品提供的功能角度,这个粒度是不一样的,需要抽象和总结。

另外一个点是功能性和非功能性(可能不同的公司会有不同的表述方式),非功能性从可用、可靠、可测试、可服务等角度,看系统需要额外增加的需求,用户通常只能从功能角度讲,最多谈到性能。 这部分是非常靠积累的,甚至应该建议在部门或公司层面积累,形成类似checklist的指导传承下去。

这里我也单独提到了软件的设计,主要是理解什么是结构化的设计(比如单片机软件)和OO的设计,设计模式我觉得可以理解成是一种优秀实践,多看多用就好。

系统集成领域

这个方向主要针对集成类项目 ,可能软件研发或互联网的人员会接触比较少,大多是诸如智慧园区、智慧医疗、平安城市等项目。在这种项目里软件只是其中一部分,还包括机房、网络、专业设备等。

这个领域技术层面的积累主要是两方面,一方面是共性的产品,比如机房里用什么服务器、磁盘阵列、防火墙;网络的一些专网、内部VLAN的划分,常用的比如视频监控、门禁的产品等;

另外一方面就是深入具体业务了,这块大多属于售前或咨询的领域,是个越老越吃香的活,当然也没那么好转行业的,靠项目慢慢熬,直到有一天连客户会问你这块建议怎么搞、要搞那些的时候,你就牛了。

项目管理领域

这里包括集成类项目 和 研发类项目的管理 ;研发管理根据常用的流程可以分为敏捷和瀑布,这方面作为管理者,重要的是要理解它的各个节点,比如敏捷,各个迭代到底要达成什么样的要求;比如瀑布,什么时候算需求转设计,什么时候算设计转开发,什么时候算开发转测试,你要能在这些关键的里程碑进行管控并基线化;

另外一方面就是对优秀实践的引入,举几个例子,好比持续集成、站立会议、代码检视、测试驱动开发、结对编程等等,你要能根据团队的实际情况则优而行、量力而行。

我只所以把项目管理放在一起,是因为从质量、成本、进度等领域看,项目管理是共同的,但集成项目需要额外在多点要求,比如合同、招投标、验收等等。

研发领域

研发领域梳理我主要针对开发者,分为嵌入式、移动和web三类;(PC端开发暂时不罗列在里面,感觉现在做的人很少了吧:云计算和大数据考虑其火爆程度,单独罗列出来)

嵌入式: 嵌入式的语言主要是C语言,语言本身积累的点我以为不多,关键在于理解和灵活运用指针,包括函数指针,结构体指针;剩下就是平台了,也就是说你在什么操作系统下开发,你要理解其中的进程通信、内存管理、网络编程、文件管理等特性; 作为嵌入式软件人员还有要积累的是硬件,你可能不会画单板设计电路,但我个人觉得至少硬件框图要看得懂,芯片手册和常用的外围电路要熟;

移动开发: 移动开发这类应用开发,入门简单,但知识点更新快,很繁琐;我自己是从几个角度去整理的,一个是框架本身 ,比如Android的几大组件、多线程、存储等;另一个是UI ,说白了就是做界面;这两部分OK了,你基本也能开始做东西了,其他不管理解如何,都先做起来再说;

剩下的除了一些移动端特有的特性,就是框架了。这里的框架也是这些年逐步出现的,我理解是因为移动端的代码规模也越来越大,所以很多服务端的设计思想,比如IOC、DAO、MVC、MVP也都引入进来。除了原生开发,现在混合架构也越来越流行,这里我觉得关键是理解web和原生的交互的原理,然后就是如何能用H5去实现类原生界面;

web开发: 这部分是大头,包括前端、后端和数据库,后端我只是举了JAVA做例子,个人认为其他语言也类似,即深入理解语言本身,并熟悉其框架。工作时间久了之后,我觉得核心积累的是架构部分,因为现在很多项目都是互联网类的项目,对性能、高可用要求比较高,你可能一开始不需要做,但要有这方面的准备。

但好在现在这些方法也已经很成熟了,特别是有了阿里云这种平台后,都不需要自己配置优化,你可以直接买类似负载均衡、缓存、读写分离等服务,因此关键点还是理解其价值;

顺带要提的是数据库,我认为现在的主流还是关系型数据库,nosql应该是利用其特殊的存储方式在某些领域给与补充,因此对nosql我们更多要关注到底用在什么场景,是真正有价值 的;

云计算和大数据: 这部分我理解可以分为几部分,其中IaaS和PaaS应该算是基础设施的一种形式,只是一个虚的是一台机器,一个虚的是一套完整的运行环境,如果不是专门做这方面的产品,能够理解其原理就够了;SaaS我觉得更多的要算一种软件设计方式,只是其顶层用户是一个独立的租户;Hadoop这些技术包含了分布式计算、列数据库等等,我实际用到不多,自己觉得更新的也比较快,感觉Hadoop还没透,什么spark、storm就出来了。。。

PS:

1、我个人参加工作后一直是偏软件的,因此也是只能站在这个角度看技术全景,当然也一定有很大的局限性,希望各位指正;

2、本来想分领域描述,突然发现工作量不小啊,先把思维导图放上来,具体的文字描述有时间逐步补充吧:)



欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢:

已在知识星球更新源码解析如下:

最近更新《芋道 SpringBoot 2.X 入门》系列,已经 20 余篇,覆盖了 MyBatis、Redis、MongoDB、ES、分库分表、读写分离、SpringMVC、Webflux、权限、WebSocket、Dubbo、RabbitMQ、RocketMQ、Kafka、性能测试等等内容。

提供近 3W 行代码的 SpringBoot 示例,以及超 4W 行代码的电商微服务项目。

获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。

兄弟,艿一口,点个赞!????

面向B端程序员的逆袭:从码农到业务解决方案架构师的进阶之路 在2B领域,程序员的终极目标不是写多少代码,而是用技术帮客户赚大钱。我的工作直接影响客户的KPI了吗?我的成果能让客户续约吗?我的技术决策能改变客户的战略吗?当你能用客户的“商业语言”聊技术,当客户高管拉你进战略会议时,升职加薪就不是梦,而是你价值的自然回报。快去试试吧,码农逆袭的日子不远了! 阅读详情

相关推荐

深入探索WebGIS地图开发技术

WebGIS(Web地理信息系统)是一种用于创建和使用地理信息系统(GIS)的在线工具,可以在Web浏览器中显示地图、分析地理数据和共享地理信息的平台。随着互联网技术的发展,WebGIS的应用越来越广泛,尤其是在地图显示、城市规划、资源管理、交通管理等领域。Leaflet.js 的灵活性还体现在其插件机制上。社区开发了大量插件来扩展 Leaflet 的基本功能。这些插件覆盖了从自定义控件、数据可视化到高级分析等各个方面。要使用插件,开发者需要引入相应的 JavaScript 和 CSS 文件到项目中。

weixin_36303305的博客 1213

远见者领航:中央研究院如何利用“技术地图”构建跨越时空的战略竞争力

研究院不能闭门造车。首先要进行STEEP/未来轮分析,洞察社会、技术、经济、环境与政策的趋势。通过确认“驱动因子”,识别出未来3-5年客户最迫切的需求。

Fasinnochuangxin的博客 361

java技术地图(学习java要知道的东西)

自己总结的java不完全技术地图,有需要的可以看看

技术地图

做了一个动态展示各个技术关系的图,涉及到点脚本,这里只能展示一个图片,详细的请访问这里 http://happy3w.com/tech-map/tech-map.html 这个图的意思是这样的, 图上每个点代表一个技术名词、技术分类等都名词 每一根线代表有关系。具体关系看心情????,因为当前没有想好怎么弄。 下面举一个具体的例子: 比如OLAP被”数据处理分类“指向了,表示”数据处...

BoRoBoRoMe的专栏 3360

java概念技术地图

本文档涵盖了java的全部重要概念和它们之间的联系。以地图的形式表现,形象易懂。是初学入门和老鸟巩固的好材料。

Java知识地图(思维导图)

本资源是Java知识地图,包括Java基础、数据类型及操作、面向对象编程基础、异常处理、继承、封装、多态、数据结构、泛型和内部类、多线程、JDBC等内容,是一张能带你真正全面入门的知识地图。本附件为svg格式,可以在浏览器打开。同时提供pdf和png格式,请前往其他资源链接下载。

javascript中的顶级地图api和库

Most of the applications we are using today in our day today life will show live location and data on maps. Example from online stores to food delivery application we are using maps. 我们今天生活中使用的大多数应用程序...

weixin_26735933的博客 832

Prompt Airlines CTF通关实战:从提示词注入到多模态攻击的AI安全攻防演练

提示词注入(Prompt Injection)是当前大语言模型(LLM)应用面临的核心安全威胁之一,其原理在于攻击者通过精心构造的用户输入,覆盖或绕过系统预设的指令,从而操控模型行为。这种攻击手法的技术价值在于揭示了AI系统在理解与执行指令时存在的逻辑边界模糊性,可能导致数据泄露、越权访问等严重风险。在应用场景上,从基础的客服对话到结合视觉识别的多模态系统,都可能成为攻击面。本文以一场名为“Prompt Airlines CTF”的实战挑战为例,深入剖析了包括指令遗忘、上下文注入、工具调用滥用及多模态提示注

aodan5477的博客 525

看各地人眼中的中国地图—暴强!

看各地人眼中的中国地图—暴强! 东北人眼中的中国地图   东北小孩眼中的中国地图   愤青眼中的中国地图   福建人眼中的中国地图   广西人眼中的中国地图 好吃的人眼中的中国地图   河南人眼中的中国地图   湖北人眼中的中国地图   湖南人眼中的中国地图 江苏人眼中的中国地图   青岛人眼中的中国地图   上海人眼中的中国地图   四川人

henrybai的专栏--大亨利白--大码 1066

SDIO_WiFi驱动学习之安卓WLAN架构介绍及调用流程分析

一、引言 上一篇博客大概介绍了MMC子系统和SDIO相关知识及架构,这一篇博客则大致分析安卓的WLAN架构及上层如何调用WLAN驱动的流程。 虽然我工作的开发环境是安卓系统,但由于我不是专业的安卓应用/框架开发工程师,所以对安卓层的一些代码并不是特别熟悉,只能大致梳理流程,不专业的地方请谅解。 本文部分内容摘抄自网络,若有侵权,请联系删除。 二、安卓WLAN架构 1、应用框架(Application framework) 在应用程序框架级别是应用程序代码,它使用各种android.net..

陈子陌的博客 5088

OpenSceneGraph编译、安装、开发环境

详细描述WIndows 10下使用Visual Studio 2019编译OpenSceneGraph 3.6.5的操作流程

国产CAx(CAD/CAE/CAM)软件研发 8774

一个程序猿眼中的国内主流地图api

在网站或者手机应用中,经常用到地图api。在现在这么激烈的竞争下,各地图服务提供的服务基本都趋于一致了。一个公司推出的新服务,其他公司肯定也会很快的跟进。这样,对于开发者来说,地图api的选择就主要参考api的易用程度、地图效果等因素了,在此仅做一汇总比对: 1、google地图: 地图效果截图: 官方地图效果:http://ditu.google.cn/maps 官方api:https:

Mr.An 的专栏 2万+

手把手教你用AD9834 DDS模块DIY一个可调信号源(附AD原理图/PCB/程序)

本文详细介绍了如何使用AD9834 DDS模块DIY一个高精度可调信号源,涵盖硬件搭建、原理图解读、PCB优化和程序烧录等关键步骤。通过STM32控制实现0-10MHz频率范围输出,特别适合电子设计与射频实验,提供完整的AD原理图、PCB设计和程序代码参考。

weixin_31854867的博客 409
上一篇: 2020 年最漂亮的 Linux 发行版
下一篇: 点赞功能,用 MySQL?还是 Redis!
公众号-芋道源码
博客等级 码龄10年 1636粉丝 377原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值