Firebase开发者的需求仍然很高
整合和节约资源,同时提高效率, 公司正在集成各种各样的工具, 比如身份验证, storage, analytics, APIs, 还有机器学习, among others. 虽然他们可以从这些工具中获益, 公司很少需要为每个产品提供完整的定制基础设施.
Enter Firebase , 哪家公司提供企业级软件套件,以满足优先运行可扩展系统的公司的大多数技术需求, 高度定制的基础设施.
Firebase是一个web和移动应用程序开发平台,其受欢迎程度 skyrocketed since its 2014年被谷歌收购 . Media giants 《欧博体育app下载》 and Le Figaro ,以及著名的公司,如 eBay Motors ,已经实现了Firebase来构建动态web和移动应用程序.
有这么多大公司在相对较少的合格工程师池中竞争Firebase开发人员, 找到合适的人来填补一个职位可能是一项挑战.
本招聘指南探讨了将专业Firebase开发人员与普通开发人员区分开来的具体属性, 列出Firebase开发人员的工作,以及如何确定适合您公司业务需求的开发人员. 本指南提供了撰写有效的招聘启事和编写Firebase面试问题的技巧, 以及指导面试和评估过程.
是什么属性将Firebase开发者与其他开发者区分开来?
Firebase开发人员使用广泛的Firebase后端即服务(BaaS)工具套件为客户提供完整的定制后端基础设施,而不会增加服务器和数据管理的额外成本和开销.
高质量的Firebase开发人员已经获得了使用该套件的显著经验和专业知识, 熟练运用产品的主要特点和工具.
开发人员应该了解Firebase的哪些主要特性?
熟练、有经验的开发人员应该精通的流行Firebase工具包括:
Build
使用电子邮件、短信和大多数单点登录(SSO)服务的安全JWT双因素身份验证
云Firestore和实时数据库
两个不同的实时NoSQL无服务器数据库选项, 它们都提供无服务器授权和离线移动和web应用程序支持,以保持业务数据同步
Cloud Storage
业务资产的云桶存储服务
云计算功能
托管的无服务器和无状态REST API函数运行服务器端逻辑, 允许扩展服务器,而不需要庞大的开销
Hosting
静态和动态网站托管(e.g.,为使用React等流行框架构建的网站提供服务.js)
云的消息传递
手机和网页平台的推送通知和应用内通知,使开发者能够向应用用户传播交易和营销内容
发布和监控
谷歌分析
事件跟踪器, users, site visits, 更重要的是,通过获得对用户需求和体验的宝贵见解,帮助企业优化产品
Crashlytics
手机崩溃的实时报告, 包括根本原因, 能够更好地跟踪和修复潜在的问题.g.(bug)
Engage
A/B Testing
用于发布和比较单个站点的多个版本,以进行web应用测试
动态链接
通过适应平台(Android)来定制用户体验的链接, iOS, 或浏览器),从中访问它们
(Firebase 动态链接使用深度链接和数据保存来实现移动和web重定向——无论应用程序是否安装.)
候选人应该具备哪些核心经验和技能?
移动开发经验 - Firebase是一个顶级的解决方案 移动平台 . It integrates with native and hybrid mobile apps; therefore, 一个专业的开发人员必须有移动开发经验, 包括用户认证和授权, 在实时数据库中持久化数据, 以及对 REST API 方便与后端通信.
完整的知识 -专家级开发人员对正确的前端和后端设计模式的理解使他们对项目及其内部和系统间通信有独特而全面的看法. 在Firebase中,所有工具都被认为是全栈的. 这使开发人员能够为特定的工作选择最好的工具和技术.
服务器和无服务器经验 -了解的核心原则 serverless解决方案 使开发人员更容易识别和预测与每个服务相关的瓶颈. 专业的开发人员也了解幕后发生的事情,因此能够更好地领导公司朝着正确的方向发展.
Firebase需要哪些互补的技术技能?
拥有丰富多样跨平台经验的Firebase工程师将与众不同. 以下技术特别相关:
用于服务器端和移动开发, Kotlin和Java是最常用的编程语言.
c++是Firebase支持的另一种流行语言, 对于开发游戏应用尤其有用.
JavaScript是一种流行的firebase编程语言,尤其是在Node中.用于服务器端开发.
对于前端开发,Firebase可以很好地集成流行的JavaScript框架,比如
Angular React和Vue.js. 掌握这些框架中的至少一个是有帮助的.
Firebase使用Realtime NoSQL数据库, 因此,很好地理解NoSQL数据库与传统关系数据库的区别是很重要的.
如何确定理想的Firebase开发人员?
为您的组织确定理想的候选人, 您必须首先确定您的特定业务需求和用例. For example, 如果您是第一次集成Firebase, 尽可能详细地记录你想要解决的问题. Alternatively, 如果您正在尝试扩展现有的实现, 指定您已经集成的所有Firebase工具, 例如身份验证或Firestore.
了解您的项目需要哪些工具,可以使您将搜索重点放在拥有这些Firebase开发人员技能的候选人上. For instance, 如果你的项目需要发送推送通知, 你需要雇佣一个在Firebase云消息方面有经验的Firebase开发人员. 如果你正在构建一个具有实时功能的手机应用, 你最好雇佣一个有Firebase实时数据库或Firestore背景的工程师.
Firebase和MongoDB开发者之间的区别是什么?
Firebase开发人员熟悉全面的Firebase平台, 哪个提供云和远程安全服务. 他们精通将Firebase的简单API集成到应用程序中.
相比之下, MongoDB Developer非常适合管理大量实时数据的存储. 他们擅长执行针对MongoDB数据库推荐的高级安全实践.
你如何确定你所需要的经验水平?
让我们来确定Firebase天赋的每个级别可以期待什么. 下表回答了这个问题:Firebase开发人员将为您做什么?
Junior
处理简单的、重复的任务,比如更新Firebase支持库. 它们还确保应用程序的性能不会因为库升级而降低. 他们可能需要指导和获得支持资源, 特别是如果这是他们的第一个Firebase项目.
Mid-level
执行更复杂的任务,例如集成一个或多个Firebase服务. 为了履行自己的职业义务,他们可能需要兼顾优先事项和灵活性.
Senior
已达到较高水平的编程和管理专业知识,可以, therefore, 咨询或处理大的, 复杂的项目. 他们对各种Firebase服务有广泛的了解,可以独立工作也可以作为团队成员工作.
有了你的问题陈述,你就可以确定需要填补的技能差距. For example, 初级开发人员适合于简单的项目,如执行维护,使您的应用程序保持最新.
中级或高级开发人员对Firebase的深入了解使他们能够集成和支持影响应用程序行为的库. 在您陈述了一个问题而解决方案之前没有被确定的情况下,可以信任高级开发人员来推荐和实现最佳解决方案.
可以预见,初级开发人员的报酬低于中级或高级Firebase开发人员. 而高级开发人员的成本更高, 他们的参与将是对项目成功结果的良好投资. 因此,权衡你的选择,为你需要完成的工作选择合适的水平.
如何写一篇 Firebase开发人员职位描述 为你的项目
吸引最优秀工程师的注意, 为您想要应聘的Firebase开发人员职位提供全面而详细的描述是很重要的. 选择职位名称时要深思熟虑. 确保措辞恰当,让求职者能够快速评估这份工作是否适合自己. For example, “Firebase首席开发人员”的职位可能会吸引经验丰富的资深工程师,但不会吸引初级开发人员.
添加详细的, 逐行描述Firebase开发人员的日常工作, monthly, 甚至是年度责任. 有条理,有描述性,准确,简洁. 包括硬技能和软技能,并以简短的项目符号格式列出您打算使用的任何特定Firebase服务.
Firebase开发者面试中最重要的问题是什么?
在面试中,评估候选人是否适合公司. 问一些问题,引导他们描述自己的背景, hard skills, soft skills, 具体的优势.
你需要制定额外的面试问题,具体到你的项目需要的Firebase功能和服务. 专注于项目的重点mobile , web , and/or full stack .
这里有一个技术上的例子, firebase相关的问题和开发者可能会回答的例子:
我如何使用Firebase来支持我的移动应用程序?
开箱即用的Firebase功能,如分析, 推送通知, SSO身份验证, 和实时数据库支持移动应用程序. 每一项基本功能都可以在一两天内集成到移动应用程序中.
我如何使用Firebase来支持我的网站?
大多数Firebase工具几乎可以与任何web框架一起使用. 经过简单的集成后,您的前端可以直接连接到任何Firebase服务. 例如,大多数数据库需要后端服务器连接来管理数据. 但是通过正确配置Firebase的授权工具, 您的前端可以直接连接到数据库, 不需要服务器. Firebase身份验证和云存储也是如此. 每个都可以配置为直接连接到您的前端, 消除了专用服务器的开销.
如果我需要一个服务器来利用像Stripe这样的东西怎么办?
像Stripe这样的第三方支付处理工具要求服务器对支付进行评估和适当响应. 通过Firebase 云计算功能部署容器化的无服务器功能, 我们可以以最小的开销实现这一点——在Firebase之外不需要单独的基础设施.
为什么公司要雇佣Firebase开发者?
公司雇佣Firebase开发人员来开发网络和移动应用程序. 对于那些希望从最小可行产品到全面生产的公司来说,Firebase的规模令人印象深刻.
熟练使用Firebase工具套件的Firebase工程师可以解决广泛的技术需求. 确保在迁移或扩展现有项目时顺利过渡, 公司咨询资深Firebase开发人员,以了解哪些Firebase工具与他们的目标和系统最兼容.
而大多数专用的基础设施需要一群专家, Firebase工具的统一及其无缝协同工作的能力允许您从一个开发人员开始,并根据速度要求而不是技术要求进行扩展.
用于维护数据库的标准基于服务器的模型的开销包括需要大量服务器设置时间的基础设施, 以及一个专门的工程师团队——前端, back end, 和devops——管理和协调安全高效的服务间通信. Typically, 当您扩展基础设施以容纳更多流量时, 你的成本和工程团队的规模都会增加.
当考虑Firebase的BaaS方法与其他数据库替代方案时-特别是, 基于服务器的模型——firebase消除了相关的开销和成本. Firebase不仅缩短了您的设置时间,还缩短了您的团队规模. Realistically, 只要你包括一个Firebase专家, 团队中剩下的开发人员可以继续编写代码并实现公司的业务逻辑,而不是维护庞大的基础设施和操作.
本文介绍的技术内容由 Khachatur Hambardzumyan .