Chris是一名高级全栈工程师,拥有7年以上为早期创业公司和强大的企业SaaS软件构建web应用程序的经验. 他专门研究Ruby on Rails, PostgreSQL, and MySQL, 主要关注后端开发, integrations, and API design. Chris是创建面向用户的生产web应用程序和内部工具的专家, 他愿意接受新的挑战,帮助其他企业发展和成功.
伊万拥有计算机工程博士学位. 他曾担任CTO和系统架构师,创建了多个项目和业务. 他有架构和实现服务器端解决方案的经验, 包括分布式平台, such as blockchains, chat servers, and game back-ends. 他帮助建立了Toptal区块链专业化, 担任技术筛选员, 并在Toptal学院讲学.
是的,PostgreSQL开发人员需求量很大. According to 高德纳,DBMS市场 是否实现了持续增长(2021年接近800亿美元)并继续加速. PostgreSQL是数据库管理的首选(也是专业开发人员的首选数据库技术). 它是一个具有高级功能的通用工具,它支持关系数据库,同时也提供NoSQL功能. 对PostgreSQL工程师的需求持续增加.
我应该如何为我的项目选择最好的PostgreSQL开发人员?
适合您项目的最佳PostgreSQL开发人员应该具有关系数据库和SQL专业知识的基础. 他们应该有PostgreSQL的经验,并且了解它与数据相关的特性, performance, and reliability. 开发人员还应该具备一定的补充技能:熟练使用过程语言(例如.g., PL/pgSQL或PL/Python), 熟悉PostgreSQL特定的JSON操作符和函数(如果需要NoSQL功能), 掌握c家族语言(在需要创建或维护内部PostgreSQL扩展的情况下). 最后,每个工程师都必须具备调试和解决问题的能力.
你在Toptal能多快招到人?
通常,你可以在大约48小时内用Toptal雇佣一名PostgreSQL开发人员. 我们的人才匹配者是他们所匹配的领域的专家,他们不是招聘人员或人力资源代表. 他们会和你一起理解你的目标, technical needs, and team dynamics, 并从我们经过审查的全球人才网络中为您匹配理想的候选人.
在这份招聘指南中, 我们概述了PostgreSQL工作描述的关键组件, interview questions, and assessments. 我们还从招聘的角度定义了PostgreSQL和SQL开发人员之间的区别,以及您的角色可能需要的互补技术技能.
是什么属性将优秀的PostgreSQL开发者与其他开发者区分开来?
在招聘PostgreSQL开发人员时, 了解PostgreSQL开发人员如何在更广泛的数据库专业背景下脱颖而出是很重要的.e.PostgreSQL vs SQL vs NoSQL技能). 数据库有两种基本类型:
关系(RDBMS)或SQL数据库 使用带有行和列的表, which is ideal for structured data; these databases facilitate complex queries and help developers enforce data consistency. 例如PostgreSQL、MySQL和Microsoft SQL Server.
如果您的项目已经严重依赖于其中一个或多个, 你可能需要雇佣一个使用Python的开发人员, Perl, or Tcl skills. 然而,这个列表与开发人员如何从应用程序的代码中与PostgreSQL交互几乎没有关系. 例如,如果你的应用程序(或它的后端)是用Java编写的,a Java developer will use PostgreSQL’s client libraries to run queries; a PostgreSQL developer can collaborate with them better if they also know Java, 取决于团队规模和角色重叠.
某些数据库项目也可能受益于 JSON-proficient开发者. As mentioned, PostgreSQL主要是一个关系数据库, 但PostgreSQL工程师仍然可以利用NoSQL功能的强大功能. 如果您正在考虑文档/关系数据库模型的组合,请考虑雇用具有丰富的JSON SQL经验和精通JSON数据类型操作符的人.
最后,在极少数情况下,熟悉c族语言(C or C++),这样他们就可以创建和维护自定义PostgreSQL扩展. However, 许多扩展以开源项目的形式存在,无需C或c++技能就可以利用它们.
如何为您的项目编写PostgreSQL职位描述
雇用PostgreSQL开发人员的下一步是根据您的数据和特定需求定制角色要求:
Scenario
Level
Requirements
您刚刚开始使用PostgreSQL并寻找应用程序开发人员.
初级或中级工程师
寻找一般熟悉SQL的候选人. 对于所有的工程师来说,对PostgreSQL的经验有严格的要求可能是没有意义的, 因为这会限制你的选择. 熟悉任何关系数据库的优秀应用程序开发人员可以相对轻松地学习PostgreSQL的特性. It is helpful, however, 让团队中至少有一个人了解PostgreSQL的高级特性,以简化其他开发人员的学习曲线. In particular, 一个复杂的新产品,如果有一个精通postgresql的数据库架构师在项目的初期就能参与到项目中来,将会受益匪浅.
像Datadog和New Relic这样的服务提供了关于PostgreSQL性能的可操作的见解,并且很容易集成到各种语言的现有应用程序中. pgAdmin is also an excellent open-source graphical tool for database administration; it can monitor database configuration and activity, 跟踪会话和锁, 捕获长时间运行的查询, and more, 但是,这些功能的大部分也可以由PostgreSQL开发人员熟练使用 psql command line.
虽然PostgreSQL是一个通用的工具,但它可能并不适合每个项目. For example, 在处理不需要的大量非结构化数据或blob存储时,其他方法提供了更好的解决方案 ACID compliance. 但是在使用其他技术时,您仍然可以从PostgreSQL开发人员那里受益 从PostgreSQL迁移数据.