管理小结
- 研发与技术管理小结
方法论,流程,工具
知道行德
|
|
接口形式主要为 RESTful,但又不拘泥于 RESTful。
一个完整的 API 请求过程包括:
下面分述之。
HTTP Operation | Similar to SQL Stmt | Description |
---|---|---|
GET | SELECT | 获取,查找 |
POST | CREATE | 新增创建 |
PUT | UPDATE | 在服务器更新资源(客户端提供改变后的完整资源) |
PATCH | UPDATE | 在服务器部分更新资源(客户端提供改变的属性) |
DELETE | UPDATE | 删除 |
URI指向的是唯一的资源对象/资源集合列表。
统一所有的 endpoint 使用复数使得 URL 更加规整,让API使用者更加容易理解,对开发者来说也更容易实现。
一个完整的 URL Endpoint 依次是:
?offset=0&limit=10&sort=_created_at
;参数列表应该被 encode 过X-Result-Fields
示例:
GET https://api.example.com/v1/users/123456/profiles
说明:
api.example.com
-
代替下划线 _
?limit=10
:指定返回记录的数量?offset=10
:指定返回记录的开始位置。?page=2&per_page=100
:指定第几页,以及每页的记录数。?sortby=name&order=asc
:指定返回结果按照哪个属性排序,以及排序顺序。?user_type_id=1
:指定筛选条件分为对资源对象的CURD操作,服务型接口和系统设置三种。
GET https://~/$version/trades 获取trades列表
GET https://~/$version/trades/:id 根据id获取单个trade
POST https://~/$version/trades 创建trade
PUT https://~/$version/trades/:id 根据id更新trade
PATCH https://~/$version/trades/:id 根据id部分更新trade
DELETE https://~/$version/trades/:id 根据id删除trade
使用 services
标识:
https://~/services/$version/server-name
示例:
GET https://~/services/$version/search?q=filter?category=file 搜索
PUT https://~/services/$version/queued/jobs 往任务队列里面添加一个新的任务
DELETE https://~/services/$version/queued/jobs/:id 根据id删除任务
使用 settings
标识:
https://~/settings/$version/server-name
如:更改界面语言环境
PUT https://~/settings/$version/gui/lang
{
"lang": "zh-CN"
}
more >>
在创业公司负责了几年的技术研发和管理,有自己的一点小心得,会陆续放在博客上来。
在 Infosys 学到的要点: Methodologies, Process, Code Standard/Guideline/Best Practices, “Checklist”。
创业公司研发部较少有纯管理性的职位,一般要身兼核心模块框架开发和团队管理的职责。这就要求负责人有较深的技术背景,上马能写核心模块,下马能指导成员遇到的遇到难题,建立起技术上的威信;管理上刚柔并济,让人心服。
创业公司,最大的不变就是变化。公司到处都不完善,而不完善的地方即是机会。做好这个心理准备,将成长得更快。
先说说贯穿于整个工作中的“团队建设”、“开会”、“任务排期”、“文档协作”和“绩效考核”。
公司,尤其是创业公司,最重要的是人,包括市场部人员、研发部人员和后勤人员等。
要保持团队,尤其是核心成员的稳定性,不仅在待遇上处于业界中上水平,还须在团队氛围和技能提升上让成员觉得这是一个好的队伍,值得一起共事。
定位:服务于研发团队,给一线团队创造一个良好的工作环境。在内,创造令人愉快的环境和氛围;公司内,协调好与市场、后勤等其他部门的关系,包括为团队向公司争取应得的利益。
每次开会前需要会议 Owner 准备议题,并将相关文档发送给参会者熟悉;开会一定要形成决议,会后要有可执行的 Action 和任务分配到相关人员。
排期:预估开发周期,制定项目开发进度,分解任务,分配任务。
执行任务过程中,每天/两天应有进度跟踪。如果使用项目管理软件(如 Worktile 或 Kanboard),成员应及时更新状态。
这在 技术团队的情绪与效率 中已经讲得很好了:
- 在 GTD(Get Things Done)中对此有阐述『压力不是来自于任务本身,而是任务在大脑中的堵塞,带来的焦虑和心理的抵触』。当一件任务还没有完成时,持续到来的新任务会带来很大的心理压力,意志不够强大时,很容易导致执行力崩溃,进入一种任务怎么做都做不完的绝望状态。
一个健康的团队需要维持开发的节奏,具体操作可以是 每1-2周为一个周期,进行大的项目规划,研发任务占用时间最好不高于80%,之后每个人能有休息/自我充电的时间,在下个周期开始时,团队又能进入满体力值的状态。
情绪的影响因素很多,简单列举几个很常见的:
- 研发节奏过于紧凑:在上一节中提到当开发的情绪体力持续透支时,会有恶劣的情绪问题。 这个在开发团队中并不少见。当开发节奏太过紧凑,团队不注意休整时,团队很容易负面情绪弥漫,而情绪一旦形成印象,便不会那么好消散。
- 薪酬倒挂:这个也是大家诟病 HR/Leader的重要原因,当一个团队薪酬内部增长太乏力时,内部人员会有流出,团队需要再招聘新人,而市场上平均待遇已经和之前不同,所以新招来的人员待遇往往也会水涨船高。 这个是很致命而且不好消解的。HR 太过节约成本,往往会对团队有致命的伤害。
- 与 Leader 理念/习惯 不合。
- 工作内容安排不当,太困难或太简单,或者与职业发展规划不符。
- 纯粹发泄。
- ……
去年的主要问题在于公司里的加班情况过于严重,导致中后期的效率不高,总体工作完成量跟正常上班时间做的差不多,甚或更少。幸好管理层也有意识到这个问题,着手制定规范一些的流程。规范与近期效果是相对矛盾的,但为了后期的维护及长期的团队管理,取一个平衡点。开发流程可依实际情况引入敏捷开发模式。
坚持做下来的:
几点做得不好的:
tag:
缺失模块。
1、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
2、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: true raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true