摘要:
上个月,我写了一篇《架构设计师能力模型》,为开发者指出一些发展的方向、架构师的能力要求,以及需要学习的相关知识。 本月,我为公司的人力部门编制了更加量化的《2017年研发人员岗位能力模型 V1.4》。用于说明不同岗位(实习工程师、初级工程师、中级工程师、高级工程师、资深工程师、架构师、高级架构师)的具体的不同要求。该模型以工作年限、技术能力、工作态度&目标导向&文化匹配度、业务熟练度、学习能力、... 阅读全文
摘要:
不论是在公司内部,还是在面试过程中,经常看到很多开发人员,说想成长为架构师,但是实际上却像一支无头苍蝇一样学习、成长。所以今天我就来简单总结一下,开发人员要成长为一个架构师,都应该学习哪一方面的知识。也就是:架构师的能力模型。 (PS:本文纯属个人见解,并不一定完全正确。对于此类话题,每个人可能都有不同的看法。欢迎大家拍砖。) 开发人员职业发展方向 在说明架构师能力模型前,我得先说... 阅读全文
摘要:
本月最重要的一件事情,是给部门的所有成员召开 2017 年的启动会议。这个会议中,讲了五个部分:2016成果总结、2017工作计划、组织架构、部门文化、部门制度。由于部门的大部分人员是在 2016 年招聘进来的新员工,每个人都来自不同的公司,其思想、价值观、文化不尽相同,所以导致在行动上出现了很多疑惑以及问题。所以文化及制度的宣贯,无疑是本次会议中最重要的部分,也是我在部门内第一次向所有人正式地说... 阅读全文
摘要:
2016年,区块链技术火了!各大金融公司、互联网巨头都竞相参加到区块链技术的研究中。我们公司的业务是税务的信息化领域,也希望通过区块链技术的应用,来提升为财税领域的服务。 区块链技术优缺点总结 下图是对区块链技术的一些特点的总结: 痛点及应用场景 对税务领域进行了一些思考,我整理出以下几类痛点,以及区块链对应的可能的应用模式: 1.发票电子化 纸质发票电... 阅读全文
摘要:
2016年我主要是在公司带一个以研发为主要工作的部门,我们部门起的名字也比较高大上,叫“软件研究院”。年末到了,从几个方面对部门的工作进行一个简单的总结。 人员变化 严格来讲,研究院是在2016年2月时才成立的,最开始时组织架构上有十来位,但是真正参与到研究院工作的人员其实只有3位,主要工作为 ACME 产品的研发。随之时间推移、产品逐渐增多,到10月份时这个部门的人员已... 阅读全文
摘要:
最近收到一位同事给我提出的部门管理制度和规范的建议。我觉得其中很多建议提得非常系统、到位、具体。在这里,我将整封邮件内容贴出供大家参考。 反思…… 随着部门人员的不断增多,我在部门外的杂事的不断增多,导致在管理工作上留出的时间不足,目前部门的管理工作确实出现了一些遗漏。 同时,我非常高兴能收到同事对我真诚地提出建议。不论是技术、管理,还是任何一方面。 虽然下文中提出的每一条... 阅读全文
摘要:
上周末参加了公司组织的领导力培训课程-4D卓越团队(创业型团队领导力训练项目),感觉有一些用,在这里分享一下。 课前游戏 培训老师先带我们做了一个游戏:每一个人,在同时参加培训的人中找到另外的 6 个人,与他沟通,互相进行夸奖,自己记录下这些“优点”。我找了三个互相熟悉的同事,和另外三个第一次见面的 阅读全文
摘要:
在应用开发过程中,有 80% 的场景下,开发者所需要的实体查询,查询条件中其实都是一些简单的属性匹配,又或是一些属性匹配的简单组合。Rafy 为这样的场景提供了更为方便使用的 API:CommonQueryCriteria。 属性匹配 在查询时,当需要使用一个或几个属性的限定匹配来进行查询时,我们可 阅读全文
摘要:
本文记录最近完成的一个通用实时通信客户端的架构。 背景 我们公司是做税务相关的软件,有针对大客户 MIS 系统,也有针对中小客户的 SaaS 平台。这些系统虽然都是 B/S 的,但是也需要使用 ActiveX 控件来调用本地的硬件设备打印相关的发票。 由于 ActiveX 控件只能在 IE 下使用, 阅读全文
摘要:
《上一篇》说到了仓位管理的重要性。这一篇则说明我对仓位控制算法的设计,以及最终使用的算法。由于内容较多,本文中我尽量只说重点。 概念 算法:就是将一定可变范围内的一组输入条件,轮换到确定的输出时,所使用到的逻辑换算关系。 仓位控制算法:其输入就是投资标的的相关因素,输出则是当前应该使用的仓位占比。不 阅读全文
摘要:
看到文章标题中的“仓位管理”,读者可能会认为它只适用于股市投资。其实不然。只要是投资都涉及到风险、回报率、投资额度,都会涉及到仓位管理。再者,人生本身就带着无数的抉择、风险和回报,人生中的很多事情,其实都是投资的一种。(关于本人的基金投资方法以及仓位管理的原因,见《股票、基金投资方案总结》。) 两三 阅读全文
摘要:
本文系转载。转载自:http://mt.sohu.com/20160516/n449639733.shtml 如何针对当前需求,选择合适的应用架构,如何面向未来,保证架构平滑过渡,这个是软件开发者,特别是架构师,都需要深入思考的问题。 本文首发于InfoQ垂直号「聊聊架构」,ID:archtime 无架构,不系统,架构是大型系统的关键。从形上看,架构... 阅读全文
摘要:
下面这篇文章总结了 asp.net MVC 框架程序的生命周期。觉得写得不错,故转载一下。 转载自:http://www.cnblogs.com/yplong/p/5582576.html 首先我们知道http是一种无状态的请求,他的生命周期就是从客户端浏览器发出请求开始,到得到响应结束。那么MVC应用程序从发出请求到获得响应,都做了些什么呢? 本文我们会详... 阅读全文
摘要:
之前转载过一篇对 Martin Fowler 大师写的微服务架构的说明文章:《微服务(Microservices)》。今天再转载一篇对于这个架构的优缺点进行总结的文章。 转载自:《微服务,让开发过程更简单还是更复杂?》、《有关微服务架构的争论:更简单还是更复杂?》。 随着DevOps、持续交付等理念的深入人心,微服务架构开始走进我们的视野。 那么微服务是业界期待已久的解... 阅读全文
摘要:
下面是一位同事对当前的产品开发框架提出的一些建议,以及我的回复。我觉得一些问题提得有一定的代表性,在征得本人同意后,将本邮件发布在博客中。 同时,也非常希望对框架、产品有好的建议的小伙伴,都可以给我发邮件:9474649 @ qq.com。 发件人: 胡庆访 发送时间: 2016-07-16 15:36 收件人: 杨盛元 主题: Re: 渣打银行项目,关于rafy框架,一点... 阅读全文
摘要:
老是记不住各 Windows 版本中的 .NET 版本号,下面汇总一下: .NET Framework各版本汇总以及之间的关系 Mailbag: What version of the .NET Framework is included in what version of the OS? 这些系 阅读全文
摘要:
最近帮忙公司的几个项目组进行了不同方面的性能优化,发现几个项目都出现了一些共性的问题。这里写一篇文章,总结一下这几类问题,以及其对应的解决方案。方便其它项目组参考。 常见问题一:打开页面非常慢,有的项目打开一个页面竟然要 20 多秒。 优化步骤: 降低每一个页面的请求数:使用浏览器跟踪打开页面后所有的请求,并逐一排查,把没有必要向服务端发起的请求优化掉,减少 Round... 阅读全文
摘要:
看了《AutoMapper and the Static Class Debate》,记录一下自己的看法。 在进行API设计时,静态类的使用有时会为设计者带来一些烦恼。应该将某个函数暴露为静态函数还是实例方法,这一点常常会造成人们的争论。 大部分人学完设计模式后,都会尽量使用单例模式。但是,静态函数 阅读全文
摘要:
本章说明如何使用额外的插件(如客户化插件)对另一插件(如产品插件)进行扩展。 使用场景 在 产品线工程 中,项目的研发分为领域工程和应用工程。这个过程中会需要对领域工程中的内容进行大量的扩展。 分层与扩展点 下图中显示了一个产品插件的逻辑分层,以及各层对应的扩展点。 可扩展的内容 实体属性扩展 可以 阅读全文
摘要:
本文介绍如何使用 Rafy 框架中的 Sql Tree 查询: 除了开发者常用的 Linq 查询,Rafy 框架还提供了 Sql 语法树的方式来进行查询。 这种查询方式下,开发者不需要直接编写真正的 Sql 语句,而是转而使用一套中间 Sql 语法树对象。这隔离了与具体数据库的耦合,使得开发者编写的 阅读全文
摘要:
本文转载自:http://www.cnblogs.com/stoneniqiu/p/5271248.html。 我个人也是在一直坚持写博客,每月至少一篇,并慢慢地将其变成了自己的习惯。一些想法与本文不谋而合,所以决定转载此文。 因朋友推荐面试了一家互联网金融公司,上午2个小时就做完了笔试、一面和二面 阅读全文
摘要:
本文转载自:http://www.cnblogs.com/liuning8023/p/4493156.html 原文是 Martin Fowler 于 2014 年 3 月 25 日写的《Microservices》。 本文内容 微服务 微服务风格的特性 组件化(Componentization ) 阅读全文
摘要:
在公司我负责的是一个产品研发的部门。由于我们产品使用到了一些新的语言、设计、框架,所以部门中新进来的员工需要进行一系列的培训,才能更好地参与到平时的开发中。为了更好地完成培训,在部门成立之初,我就建立了一套较实用的培训流程。由于公司需要,所以把该流程画了一下。今天给大家分享一下: 流程中涉及到的一些 阅读全文
摘要:
Rafy 框架又添新成员:流水号插件。本文将解释 Rafy 框架中的流水插件的场景、使用方法。 场景 在开发各类数据库应用系统时,往往需要生成从一开始的流水号,有时还需要按月或者按日进行独立生成,如下面的格式:2016031800000001、2016031800000002……。 设计本插件用于生 阅读全文
摘要:
最近两周完成了对公司某一产品的前端重构,本文记录重构的主要思路及相关的设计内容。 公司期望把某一管理类信息系统从项目代码中抽取、重构为一个可复用的产品。该系统的前端是基于 ExtJs 5 进行构造的,后端是基于 Asp.net MVC 提供的 REST 数据接口。同时,希望通过这次重构,不但能将其本 阅读全文
摘要:
一直想在 Linux 上使用 MONO 试试运行 Rafy,最近因为业务需要,总算是真正地试验了一次。下面是本次部署记录的一些要点。 Linux 这次部署,我是和两位同事一起来试验的。由于我们对 Linux 都不太熟悉(多年前曾经用过很少一段时间的 RedHat,那些命令现在也早已忘记了,哈。),所 阅读全文
摘要:
Rafy 框架又添新成员:幽灵插件。本文将解释该插件的场景、使用方法、原理。 场景 在开发各类数据库应用系统时,往往需要在删除数据时不是真正地删除数据,而只是把数据标识为‘已删除’状态。这些数据在业务逻辑上是已经完全删除、不可用的数据,但是不能在数据库中真正的把它们删除,而是需要永久保留这些历史数据。即开发人员常说的‘假删除’功能。 这种需求往往是系统级的。往往不是针对某... 阅读全文
摘要:
最近在设计框架时,需要设计一类扩展点,发现不能简单地继承或使用事件来给使用者提供 API。最终使用拦截器模式解决了 API 的设计。 扩展点使用场景 该扩展点的使用场景如下: 不能使用继承;需要在类型的继承体系外(非被扩展类型的子类)对类型进行扩展。 需要能在基本逻辑的执行前、后扩展新的逻辑,甚至可以使用新的逻辑替换基础逻辑。 对于性能敏感。由于该基础逻... 阅读全文
摘要:
某些场景下,开发者希望能够大批量地把实体的数据导入到数据库中。虽然使用实体仓库保存实体列表非常方便,但是其内部实现机制是一条一条的保存到数据库,当实体的个数较多时,效率就会很低。所以 Rafy 设计了批量导入插件程序,其内部使用 ADO.NET 及 ODP.NET 中的批量导入机制来把大量数据一次性 阅读全文
摘要:
有时候,开发者不想通过实体来操作数据库,而是希望通过 SQL 语句或存储过程来直接访问数据库。Rafy 也提供了一组 API 来方便实现这类需求。 IDbAccesser 接口 为了尽量屏蔽各数据库中 SQL 语句参数的不同标识,同时也为了使开发者更简单地实现参数化的查询。Rafy 中提供了 IDb 阅读全文
摘要:
当开发者使用 CodeFirst 开发模式,编写了大量的实体类,在代码中编写了完整的类型注释和属性注释,并自动生成数据库后,往往需要把实体类型和实体属性上的注释同时生成到对应的数据库表及字段上。这样,即方便在查看数据库时能清晰地看到每一个表及字段的含义,也方便使用一些第三方的工具(如 PowerDe 阅读全文
摘要:
前段时间把 Rafy 的用户手册由 CHM 格式转换为了网页格式,而且发布到了 github.io 上,即方便文档的实时更新,也方便大家查看。 Rafy 用户手册网页版地址: http://zgynhqf.github.io/Rafy。 附: 如何使用 github.io 来发布网页版帮助文档: h 阅读全文
摘要:
本月给公司内部一个项目做架构重构,其中使用到了 Rafy 框架。所以我培训了 Rafy 领域实体框架的使用方法,过程中录制了视频,方便其他同事查看。现在把视频放到园里来分享下,有兴趣的朋友可以看看,有什么问题可以进 Rafy QQ 群询问。 关于 Rafy 开源框架的详细介绍:《Rafy 领域实体框 阅读全文
摘要:
上一篇已经总结了‘安心睡大觉’的基金投资方法。这一篇主要是把原来临时记录在手机上的一些札记整理发出来。 2015/07/07 11:05 反思:股市变化较快时,做短线,则应该以周指标为主;反之,则做长线,则应该以季指标为主。 另外,波动大时,开放式基金不太好,大量赎回导致流动性考验较大,大量买入则会 阅读全文
摘要:
最近到了新公司上班,由于当前的系统时间比较紧、任务比较重,已经连续加班几个星期,也没有时间再关注股市。今天把 7 月 10 日总结的股票、基金投资方案整理一下,暂时告一段落。未来都将按照纪律操作,不再花心思特别关注股市。 本文包含以下内容: 理论基础 操作计划 理论基础 人性 我只愿意买基金、不愿意 阅读全文
摘要:
上个月写了一个团队中的 BaaS API 的设计规范,给大家分享下: 目录 1. 引言... 4 1.1. 概要... 4 1.2. 参考资料... 4 1.3. 阅读对象... 4 1.4. 术语解释... 4 2. API 设计规范... 5 2.1. 地址格式... 5 2.2. 输入与输出... 6 2.2.1. 通用输入数据... 6 2.2.2. 主... 阅读全文
摘要:
最近给某企业培训了完整的 TFS 2013 系列课程,一共四天。下面是该课程的内容安排:项目管理 建立项目 成员的维护 Backlog 定义 任务拆分 迭代时间规划 工作量计划 任务分配 开发任务 ... 阅读全文
摘要:
今天搞这两个关键字搞得有点晕,主要还是没有彻底理解其中的原理。混淆了一个调用异步方法的概念:在调用异步方法时,虽然方法返回一个 Task,但是其中的代码已经开始执行。该方法在调用时,即刻执行了一部分代码,直接最底层的 Async API 处才产生真正的异步操作,这时向上逐步返回,并最终使用一个 Ta... 阅读全文
摘要:
阅读全文
摘要:
项目组用到了 Node.js,发现下面这篇文章不错。转发一下。原文地址:《原文》。 ------------------------------------------- A chatroom for all! Part 1 - Introduction to Node.js Rami Sayar 4 Sep 2014 11:00 AM 7 This node.js tutor... 阅读全文