管理小结
- 研发与技术管理小结
 方法论,流程,工具
 
		
		
		  知道行德
| 
 | 
 | 
接口形式主要为 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"  
}
在创业公司负责了几年的技术研发和管理,有自己的一点小心得,会陆续放在博客上来。
在 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