百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

架构师,资深工程师必备基础知识(架构师是什么意思)

mhr18 2024-10-18 07:02 27 浏览 0 评论

正好利用这个漫长的假期,花了几天时间整理一下架构师,资深工程师必备基础知识清单(check list),供大家学习和参考。不管你现在已经是架构师或者未来即将成为架构师,希望对大家有所帮助,查缺补漏,希望大家留言讨论。另外,我也会持续更新完善。

1.软件架构

  • 无服务器架构(selerless)
  • 微服务
  • CS架构(client server)
  • 分层架构(layered)
  • 分布式系统
  • 面向服务SOA

2.管理:作为资深工程师,架构师基本的管理的技能是必须要有的。

  • 敏捷开发Agile ,Scrum
  • Scaled Agile Framework(“SAFe”),大规模Scrum(LeSS)
  • PMI,ITIL,RUP,CMMI
  • 教练技术(Coach)和 mentoring:如果大家对教练技术感兴趣,请留言,我可以分享自己的一些经验和体会
  • 向上管理

3.设计模式,这里的设计模式不是指那个经典软件开发的23种模式,只要是指我们在软件设计过程经常碰到的常见模式。

  • MVC,MVP,MVVM
  • Actor 模式
  • SOLID
  • 领域驱动设计(DDD)
  • OOP
  • CQRS,Eventual Consistency
  • ACID,CAP,BASE 理论

4.大数据和数据库

  • 关系代数,数据库设计的三大范式
  • Oracle,MySQL,SQL server,PostgreSQL
  • NoSQL,Redis,MongoDB
  • Hadoop,Spack,MapReduce
  • ETL,Datawarehouse
  • 数据分析(Analytics),PowerBI

5.网络

  • ISO的7层模型,TCP/IP模型
  • HTTP/HTTPS
  • Socket网路模型
  • 网路IO模型
  • 防火墙(Firewalls),代理(Proxies)
  • 交换机以及路由器

6.体系架构框架

  • TOGAF
  • UML
  • IAF
  • BABOK

7.编程语言

  • PHP
  • Python
  • Go
  • Javascript/Typescript
  • Java/kotin/Scala/Spring
  • .NET

8.程序设计

  • 高质量编码能力:重用性,低耦合,可扩展性,可维护性,高性能,安全性高
  • 重构
  • 整洁代码(clean code)
  • 9.Web和移动端

    • Reactive和函数化编程
    • React,Angular,Vue
    • SPA
    • PWA
    • W3C和WHATWG 标准
    • 设计思维(design thinking),UI,UX,CX

    10.运维

    • CI/CD tools,Jenkins,gitlab runner
    • Service Mesh
    • SRE
    • Docker,K8s
    • Linux
    • Jboss,Tomcat,Nginx
    • DevOps,ansible ,TerraformT
    • 云计算:AWS,Azure,阿里云,公有云,私有云,混合云

    11.安全

    • Oauth2,Open ID connect(OICD)
    • OWASP
    • PKI
    • 网络安全等级保护

    12.企业应用软件,如果大家对这些比较模式,可以看一下官方的培训教程,了解一下。目前我们公司用的比较多的是salesforce和SAP,很多时候,免不了跟他们做集成

    • Salesforce
    • IBM BPM
    • SAP ERP,HANA,Busness Objects
    • 微软 Dynamics

    13.系统集成以及中间件

    • ESB,SOAP
    • API 网关以及管理
    • REST
    • BPM,BPEL
    • 消息队列MQ,Kafaka,RocketMQ,RabbitMQ,ActiveMQ,ZeroMQ
    • RPC,Dubbo,Thrift,gRPC
    • 数据库中间件

    14.性能优化

    • 性能优化方法论
    • 容量评估
    • CDN 网络
    • 连接池
    • 性能调优
    • 负载均衡,LVS,Haproxy,Keepalived实现读均衡负载


    相关推荐

    Java面试宝典之问答系列(java面试回答)

    以下内容,由兆隆IT云学院就业部根据多年成功就业服务经验提供:1.写出从数据库表Custom中查询No、Name、Num1、Num2并将Name以姓名显示、计算出的和以总和显示的SQL。SELECT...

    ADG (Active Data Guard) 数据容灾架构下,如何配置 Druid 连接池?

    如上图的数据容灾架构下,上层应用如果使用Druid连接池,应该如何配置,才能在数据库集群节点切换甚至主备数据中心站点切换的情况下,上层应用不需要变动(无需修改配置也无需重启);即数据库节点宕机/...

    SpringBoot多数据源dynamic-datasource快速入门

    一、简介dynamic-datasourc是一个基于SpringBoot的快速集成多数据源的启动器,其主要特性如下:支持数据源分组,适用于多种场景纯粹多库读写分离一主多从混合模式。支持...

    SpringBoot项目快速开发框架JeecgBoot——项目简介及系统架构!

    项目简介及系统架构JeecgBoot是一款基于SpringBoot的开发平台,它采用前后端分离架构,集成的框架有SpringBoot2.x、SpringCloud、AntDesignof...

    常见文件系统格式有哪些(文件系统类型有哪几种)

    PART.01常见文件系统格式有哪些常见的文件系统格式有很多,通常根据使用场景(Windows、Linux、macOS、移动设备、U盘、硬盘等)有所不同。以下是一些主流和常见的文件系统格式及其特点:一...

    Oracle MySQL Operator部署集群(oracle mysql group by)

    以下是使用OracleMySQLOperator部署MySQL集群的完整流程及关键注意事项:一、部署前准备安装MySQLOperator通过Helm安装Operator到Ku...

    LibreOffice加入"转向Linux"运动

    LibreOffice项目正准备削减部分Windows支持,并鼓励用户切换到Linux系统。自Oracle放弃OpenOffice后,支持和指导LibreOffice开发的文档基金会对未来有着明确的观...

    Oracle Linux 10发布:UEK 8.1、后量子加密、增强开发工具等

    IT之家6月28日消息,科技媒体linuxiac昨日(6月27日)发布博文,报道称OracleLinux10正式发布,完全二进制兼容(binarycompatibility...

    【mykit-data】 数据库同步工具(数据库同步工具 开源)

    项目介绍支持插件化、可视化的数据异构中间件,支持的数据异构方式如下MySQL<——>MySQL(增量、全量)MySQL<——>Oracle(增量、全量)Oracle...

    oracle关于xml的解析(oracle读取xml节点的属性值)

    有时需要在存储过程中处理xml,oracle提供了相应的函数来进行处理,xmltype以及相关的函数。废话少说,上代码:selectxmltype(SIConfirmOutput).extract...

    如何利用DBSync实现数据库同步(通过dblink同步数据库)

    DBSync是一款通用型的数据库同步软件,能侦测数据表之间的差异,能实时同步差异数据,从而使双方始终保持一致。支持各种数据库,支持异构同步、增量同步,且提供永久免费版。本文介绍其功能特点及大致用法,供...

    MYSQL存储引擎InnoDB(八十):InnoDB静态数据加密

    InnoDB支持独立表空间、通用表空间、mysql系统表空间、重做日志和撤消日志的静态数据加密。从MySQL8.0.16开始,还支持为模式和通用表空间设置加密默认值,这允许DBA控制在这些模...

    JDK高版本特性总结与ZGC实践(jdk高版本兼容低版本吗)

    美团信息安全技术团队核心服务升级JDK17后,性能与稳定性大幅提升,机器成本降低了10%。高版本JDK与ZGC技术令人惊艳,且JavaAISDK最低支持JDK17。本文总结了JDK17的主要...

    4 种 MySQL 同步 ES 方案,yyds!(两个mysql数据库自动同步的方法)

    本文会先讲述数据同步的4种方案,并给出常用数据迁移工具,干货满满!不BB,上文章目录:1.前言在实际项目开发中,我们经常将MySQL作为业务数据库,ES作为查询数据库,用来实现读写分离,...

    计算机Java培训课程包含哪些内容?其实就这六大块

    不知不觉秋天已至,如果你还处于就业迷茫期,不如来学习Java。对于非科班小白来说,Java培训会更适合你。提前了解下计算机Java培训课程内容,会有助于你后续学习。下面,我就从六个部分为大家详细介绍...

    取消回复欢迎 发表评论: