1 产品简介
Lintcode是一款编程面试题在线训练平台。主要是为了帮助IT从业者通过刷题提升编程能力,顺利通过编程面试,拿到Offer。平台内的题目主要来自于国内外IT企业的面试真题,IT从业者通过在线刷题,系统自动在线评测反馈,帮助用户快速了解和提升自己的算法编程水平。
2 市场概述
目前,随着大数据、人工智能等信息产业的发展,IT人才的需求量持续增加。同时由于IT岗位的工薪高等因素,成为初级职场人士追逐的热门岗位。从市场体量上来看,目标用户群体体量庞大,目标明确。这类用户主要以20岁到40岁男性为主,并且更加趋向于年轻化。有着比较良好的在线学习的习惯。学生群体和初级IT职场人士的消费水平有限。
在IT从业者获得offer的整个过程中,主要包含以下四种需求。
一是从零开始学习的阶段,用户通过获取学习资源,来完成自主学习,提升编程能力,市场上有慕课网、极客学院、51CTO学院、网易云课堂等;
二是项目练习阶段,用户想要通过完整的项目经历来积累自己的项目经验,为找工作打好基础,市场上主要有一些线上和线下的集训班,通过协作完成项目实战来达到进阶提升;
三是寻找面试经验。对于学生群体和初级IT职场人士存在面试经验不足的问题,包括算法问题、面试流程、面试技巧等等;
四是提供招聘和岗位信息,能够为及时为用户提供招聘信息,让用户可以找到适合自己的岗位,完成简历的投递。
3 用户需求和场景
Linecode的目标用户是CS相关专业大学生以及编程初级职场人士,想要拿到一份好的编程相关offer。从产品的定位——一款编程面试题在线训练平台,可以看出产品满足的需求和场景是,编程类岗位在面试过程中会问到算法编程的问题,通过收集国内外IT企业面试真题,提供在线评测,帮助用户提升编程水平,顺利通过面试。
在此基础上,进一步挖掘用户需求。主要围绕用户在刷题过程中可能存在的用户场景。具体请见思维导图:
4 关键功能点
根据用户需求和场景,产品提出具体的功能方案,详细功能如下图所示:
5 关键页面设计
5.1 首页设计
首页采用了多用户场景的页面设计。当用户第一次打开首页,并且在未登录的情况下,从用户的角度来讲,用户的体验目标是了解平台的特色和功能,看看是否满足个人的需求,是否愿意进行注册。从产品的角度来讲,为了引导用户完成注册,向用户展示产品的特色和功能。目前Lintcode未登录状态下的首页包含产品Slogan,对产品的特色和功能介绍信息欠缺。
当用户完成注册并登陆首页时,从用户的角度来讲,用户的体验目标时以最短的路径抵达感兴趣的功能页面。从产品的角度来讲,向用户展示产品的功能动态、用户的个人动态以及用户的刷题数据和关键功能入口,方便用户在网站中进行浏览,快速熟悉产品的功能,同时不断地激励用户完成刷题。
5.2 算法页面设计
算法页面采用一站式导航设计,减少用户在页面之间的频繁跳转。但同时也会带来两个问题,一是受限于一站式导航的框架,不利于功能结构和页面结构的拓展,如讨论区,很难对功能进行重新独立规划;二是页面之间的逻辑存在错误,如VIP放在了算法页面的导航中,和算法本身的功能并不太相关,而是基于业务的功能。
6 盈利模式
Lintcode在提供免费的面试真题在线测评功能的同时,采用会员特权的订阅模式来实现收费盈利。这部分付费用户通常是产品的资深用户,通过付费,拥有产品更高的使用权限,如访问所有阶梯训练题目、排行榜看别人的代码等。目前看来,基于会员特权的订阅模式是产品比较可取的盈利模式。既可以通过免费的题目积累一定的用户,又可以通过高级功能权限实现资深用户的转化。
7 竞品对比分析
在市场上,Lintcode有一款直接的竞品,即Leetcode。Leetcode,slogan为极客挚爱的在线技术平台。在目标用户群体和用户需求上,Lintcode和Leetcode几乎重叠。我们将从关键功能和页面进行竞品对比分析。
7.1 关键功能对比
从Lintcode和Leetcode的功能对比中我们可以发现以下几点。
- 一是 Leetcode的国内本土化比Lintcode更有优势。Leetcode中文站点和英文站点采用两个独立的站点,数据独立,尤其在讨论和阅读等模块体验更加友好。
- 二是Leetcode更加强调系统化的练习,通过探索模块,组织系统练习的单元,方便用户通过练习查缺补漏。
- 三是Leetcode提供了阅读功能和更丰富的社区,相比较Lintcode的单一答疑讨论区而言,Leetcode的社区更加丰富,包括面试问题、面试经验、技术疑问和综合讨论。
- 四是Lintcode和Leetcode有着不同程度的激励策略,Linecode通过排行榜来激励用户刷题,Leetcode不仅通过排行榜同时还通过LeetCoins来激励用户贡献题目、参与测试用例和参与竞赛。
- 五是阶梯训练是Lintcode的一大特色,用户通过进阶练习、解锁关卡,不断地挑战难题,突破难关。
7.2 关键页面对比
7.2.1 首页设计对比
Leetcode同样采用多用户场景的页面设计。当用户第一次打开首页,并且在未登录的情况下,Leetcode从探索新发现、产品服务、学习开发3个方面,向用户传达产品的特色和服务,可以让用户更加清楚地了解到产品的特点,获取用户信任以及产生注册的动机。
7.2.2 题库页面设计对比
和Lintcode的一站式导航设计不同的是,Leetcode采用的独立页面入口设计的方式。将各个不同的功能模块入口放置在导航栏。用户在题库页面可以专注于刷题,而不被其他的信息所干扰。同时又可以提升其他功能的信息层级。以社区为例,通过放置在导航栏,形成独立页面的入口,提升了用户访问社区的用户体验,同时为社区的功能结构拓展留下了空间。
8 功能点优化和未来可能迭代的方向
通过对Lintcode进行体验分析,了解了Linecode的产品定位、目标用户和需求场景、关键功能和页面、盈利模式以及和Leetcode的对比分析。对Lintcode有了比较全面的认识。同时我们也发现,Lintcode和Leetcode正在相互借鉴和学习。根据分析的结果,提出Lintcode可以优化的功能点和未来可能迭代的方向。
8.1 优化的功能点
- “我的提交”的位置调整。目前“我的提交”按钮在提交按钮的旁边,但是同时它和“描述”、“排行榜”属于同一组导航,目前的位置在位置逻辑上存在歧义。
- 修改“提交”按钮文案。“提交”按钮行为上实际上是打开代码编辑模式,并非代码提交阶段,在文案上存在歧义。
- 在颜色上提升收藏的视觉信息层级。目前收藏按钮的颜色和题目的颜色相同,在视觉上不容易被发现。
- “筛选”功能优化。目前产品筛选功能包含刷题状态、算法、题目来源、数据结构等。筛选分类复杂繁多。需要对筛选功能进行精简和重新规划,例如设置tag标签区域。
8.2 未来可能迭代的方向
- 关于笔记功能。设置用户个人笔记的统一入口。目前在每个题目下面是可以创建笔记,同时在首页会生成一条笔记动态。关于笔记的应用场景有两个,一是将笔记分享给其他用户,用户可以在该道题目下面查看其他用户的笔记;二是用户通过做笔记,方便后续查看和回顾。目前产品满足场景一的需求,场景二的需求尚未满足。
- 关于讨论区功能。目前讨论区仅仅满足用户问题答疑,并且满足的用户场景也有限,如,用户想要通过搜索来查找问题。同时产品需要进一步挖掘答疑之外的用户需求,如,面试技巧交流的需求。
- 关于激励机制。目前Lintcode的激励机制包括排行榜、群组、解锁关卡等。Leetcode融入游戏中的任务奖励元素,通过Leetcoins进行任务奖励,来兑换一定的实物奖品,引导用户参与产品任务,提高用户粘性。
- 和九章算法的产品协同。正如一开始讲到的,CS相关专业大学生以及编程初级职场人士,在获得offer的过程中,包含四大需求和场景。Lintcode作为一款编程面试题在线训练平台,满足面试回答算法问题的需求和场景,九章算法则更加注重在线传授最优质的计算机课程,帮助更多中国人找到好工作,满足用户通过获取学习资源,来完成自主学习,提升编程能力的需求和场景。两个产品之间目标用户是一致的,通过产品的相互协同和导流,完成用户的相互转化。