Bybit面经
缘起
V2EX有广告内推,看描述还挺不错
贴主5 年半工作经验,有两年大厂工作经历,20 年 11 月来到新加坡分公司开始工作
后来是猎头Jeff找的我
0318 主面
主要一个面试官是后端开发+金融背景 某条金融线的负责人;其余是交叉面试。面试过程:
- 介绍自己
- 工行项目他不感兴趣(因为他对接的都是新金融机构),直接问网易的项目
- 圈圈项目,分布式锁,问的很细
- 转账程序怎么写?1. @Transactional 2. 读取余额 3.写回余额,写回时我提供了一个细节,检查workerId是否还是自己,不是自己要rollback。
- 性能测试。我讲了ethereumj的改造,多线程,刚开始arthas,再全面打点才算走上正轨
- 数据库,问了批量锁表的设计。然后是索引
2千万记录,id ABC3字段,a=1, b in(7,8,9) c是时间戳, order by c 倒序
索引,我问了 1. 数据分布情况, 2. 业务索引使用情况
这种情况下应该联合索引,但是具体我不太清楚
http1.1 队头阻塞 http2没有这个问题,分了流,虚拟的信道,但是http层没有问题了,但是tcp还是有
QUIC,基于udp的,没有tcp这个问题了,这个问题回答得分的
https握手过程
- tcp的三次握手,这个还是有,可能是有100多ms延迟了
- client random,server random, ECDH或者RSA
- http报文分为2个部分,header和body,header字段:我 authorization,type,length,cookies,host
为啥这时候从eBay走?
我回答:
- 喜欢区块链技术(有博客为例子)
- 现在是很好的时机,17年是比特币涨,所以投资增加,现在也是看涨行情
- 也有意转golang,在工作中学习语言特性
平时怎么学习?
我回答:可能每次量不多,但重在坚持
- 英语流利说
- 极客时间
问他的
怎么学习go?
- 在工作中学(我有提到之前用golang写jvm)
- 深入,对某方面比如协程,垃圾回收有专长
他做openApi,为了量化,或者传统金融,比如老虎证券上读取市场信息
这块有前途
- 吞吐量
- 规范性
- sdk
还提到了FIX协议,过去我知识发挥了作用(工行港股项目,连连和北京银行合作项目),相当于金融界的http
20211227补充
和猎头交流,这2年bybit扩张很快,从20人成长到200人,部门划分
- spots 现货
- Futures 期货
- options 期权
技术栈还是golang (有些老系统是php nodejs) 要求高并发 低延迟 性能调优
中间件上 mysql redis kafka
周一猎头回复没有通过
具体原因:
1.应该是他们hr直接反馈的,因为说到技术,认为技术上没问题,还是认可的
2. 核心原因:刚开始接触时,是按team leader接触的,但是我离team leader还是差点;如果是按senior开发来算,我的级别又从团队建设角度不利,不好带。(小交易所没法做到inclusive雇佣)
相关文章:
Bybit面经
缘起 V2EX有广告内推,看描述还挺不错 贴主5 年半工作经验,有两年大厂工作经历,20 年 11 月来到新加坡分公司开始工作 后来是猎头Jeff找的我 0318 主面 主要一个面试官是后端开发金融背景 某条金融线的负责人;其余是交叉面试。面…...
GORM---创建
目录 模型定义使用Create创建记录一次性创建多条数据批量插入数据时开启事务默认值问题 模型定义 定义一个PersonInfo结构体。 type PersonInfo struct {Id uint64 gorm:"column:id;primary_key;NOT NULL" json:"id"UserName string gorm:"co…...
高级查询 — 分组汇总
关于分组汇总 1.概述 将查询结果按某一列或者多列的值分组。 group by子句 分组后聚合函数将作用于每一个组,即每一组都有一个函数值。 语法 select 字段列表 from 表名 where 筛选条件 group by 分组的字段;select 字段列表 from 表名 group by 分组的字段 hav…...
【多线程】阻塞队列
1. 认识阻塞队列和消息队列 阻塞队列也是一个队列,也是一个特殊的队列,也遵守先进先出的原则,但是带有特殊的功能。 如果阻塞队列为空,执行出队列操作,就会阻塞等待,阻塞到另一个线程往阻塞队列中添加元素(…...
python2升级python3
查看当前版本 [roottest-01 node-v18.16.0]# python -V Python 2.7.5 安装依赖 [roottest-01 node-v18.16.0]# yum install -y gcc gcc-c zlib zlib-devel readline-devel 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base…...
Apache Hudi初探(八)(与spark的结合)--非bulk_insert模式
背景 之前讨论的都是’hoodie.datasource.write.operation’:bulk_insert’的前提下,在这种模式下,是没有json文件的已形成如下的文件: /dt1/.hoodie_partition_metadata /dt1/2ffe3579-6ddb-4c5f-bf03-5c1b5dfce0a0-0_0-41263-0_202305282…...
Java之旅(九)
Java 循环语句 Java 中的循环语句包括 for、while 和 do-while,它们都可以用于实现循环结构。 for 语句用于循环执行一段代码块,直到给定的条件表达式的布尔值为 false。 for 语句的一般格式如下: for (initialization; condition; update…...
6年测试经验之谈,为什么要做自动化测试?
一、自动化测试 自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。 个人认为,只要能服务于测试工作,能够帮助我们提升工作效率的,不管是所谓的自动化工具,还是简单的SQL 脚本、批处理脚本,还是自己编写…...
二分法的边界条件 2517. 礼盒的最大甜蜜度
2517. 礼盒的最大甜蜜度 给你一个正整数数组 price ,其中 price[i] 表示第 i 类糖果的价格,另给你一个正整数 k 。 商店组合 k 类 不同 糖果打包成礼盒出售。礼盒的 甜蜜度 是礼盒中任意两种糖果 价格 绝对差的最小值。 返回礼盒的 最大 甜蜜度。 记录一…...
java设计模式(十六)命令模式
目录 定义模式结构角色职责代码实现适用场景优缺点 定义 命令模式(Command Pattern) 又叫动作模式或事务模式。指的是将一个请求封装成一个对象,使发出请求的责任和执行请求的责任分割开,然后可以使用不同的请求把客户端参数化&a…...
[运维] iptables限制指定ip访问指定端口和只允许指定ip访问指定端口
iptables限制指定ip访问指定端口 要使用iptables限制特定IP地址访问特定端口,您可以使用以下命令: iptables -A INPUT -p tcp -s <IP地址> --dport <端口号> -j DROP请将 <IP地址> 替换为要限制的IP地址,将 <端口号&g…...
JS学习笔记(3. 流程控制)
1. 分歧 1.1 if条件 if (条件) {...} // 为真则执行,单条语句可省略大括号 if (条件) {...} else {...}// 为真则执行if,否则执行else if (条件1) {...} else if (条件2) {...} else {...} // 条件1为真则,条件2为真则,否则执…...
遥感云大数据在灾害、水体与湿地领域典型案例及GPT模型教程
详情点击链接:遥感云大数据在灾害、水体与湿地领域典型案例及GPT模型教程 一:平台及基础开发平台 GEE平台及典型应用案例; GEE开发环境及常用数据资源; ChatGPT、文心一言等GPT模型 JavaScript基础; GEE遥感云重…...
什么是文件描述符以及重定向的本质和软硬链接(Linux)
目录 1 什么是文件?什么是文件操作?认识系统接口open 什么是文件描述符认识Linux底层进程如何打开的文件映射关系重定向的本质理解软硬链接扩展问题 1 什么是文件?什么是文件操作? 文件 文件内容 文件属性(文件属性…...
LVM逻辑卷元数据丢失恢复案例 —— 筑梦之路
Lvm常见的故障主要是pv出现异常,有以下几种情况 一个是pv所在的磁盘发生了lvm的元数据损坏一个是系统无法识别到pv所在的磁盘一个是系统异常,断电等导致重启后盘符发生变化,也就是系统识别的磁盘uuid发生变化,但是wwid还是可以对应…...
Java技术规范概览
Java技术规范 目录概述需求: 设计思路实现思路分析1.Java JSR的部分2.JSR-000373.JSR-0000394.JSR-000337 参考资料和推荐阅读 Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a bet…...
【OpenMMLab AI实战营第二期】二十分钟入门OpenMMLab笔记
OpenMMlab 主页:openmmlab.com 开源地址:https://github.com/open-mmlab 学习视频地址:https://www.bilibili.com/video/BV1js4y1i72P/ 概述 开源成为人工智能行业发展引擎 时间轴 theano:2007 Caffe:2013 Ten…...
docker-compose单机容器集群编排
docker-compose dockerfile模板文件可以定义一个独立的应用容器,如果需要多个容器就需要服务编排。服务编排有很多技术方案 docker-compose开源的项目实现对容器集群的快速编排 docker-compose将所管理的容器分为三层,分别为工程,服务&#…...
CentOS7 安装Gitlab
1、安装依赖 sudo yum install -y curl openssh-server ca-certificates tzdata perl libsemanage-devel 2、安装邮件服务工具 sudo yum install -y postfix 3、配置GitLab 软件源镜像 curl -fsSL https://packages.gitlab.cn/repository/raw/scripts/setup.sh | /bin/bash …...
Mysql InnoDB的Buffer Pool
Buffer Pool 在MySQL服务器启动的时候就向操作系统申请了⼀⽚连续的内存,他们给这⽚内存起了个名,叫做Buffer Pool(中⽂名 是缓冲池)。 默认情况下Buffer Pool只有128M⼤⼩,最⼩值为5M,通过修改配置文件设…...
词达人自动化工具:如何用智能技术将30分钟学习任务压缩到3分钟完成?
词达人自动化工具:如何用智能技术将30分钟学习任务压缩到3分钟完成? 【免费下载链接】cdr 微信词达人,高正确率,高效简洁。支持班级任务及自选任务 项目地址: https://gitcode.com/gh_mirrors/cd/cdr 在当今数字化教育环境…...
Taotoken模型广场如何帮助开发者快速选型,对比主流模型特性
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Taotoken模型广场如何帮助开发者快速选型,对比主流模型特性 对于需要接入大模型能力的开发者而言,面对市场…...
如何用自动化脚本解放双手:淘宝淘金币全任务一键完成指南
如何用自动化脚本解放双手:淘宝淘金币全任务一键完成指南 【免费下载链接】taojinbi 淘宝淘金币自动执行脚本,包含蚂蚁森林收取能量,芭芭农场全任务,解放你的双手 项目地址: https://gitcode.com/gh_mirrors/ta/taojinbi 还…...
第七部分-容器安全与监控——33. 镜像安全
33. 镜像安全 1. 镜像安全概述 镜像是容器的基石,镜像安全问题直接影响容器运行时安全。镜像安全涵盖基础镜像选择、镜像构建过程、镜像存储和分发等环节。 ┌─────────────────────────────────────────────────…...
手把手教你用Makerbase VESC遥控你的电机:从硬件连接到APP配置的保姆级避坑指南
Makerbase VESC遥控电机全流程实战:从硬件对接到信号调优的深度指南 第一次拿到Makerbase VESC套件时,看着密密麻麻的接口和参数选项确实让人头皮发麻。作为过来人,我完全理解那种既兴奋又忐忑的心情——兴奋在于终于可以亲手打造自己的智能…...
保姆级教程:用MPTool给瑞昱RTL8762CMF蓝牙芯片烧录固件(附串口接线图)
零基础实战:RTL8762CMF蓝牙芯片固件烧录全流程指南 拿到一块搭载RTL8762CMF的开发板时,最关键的步骤莫过于正确烧录固件。作为一款支持蓝牙5.0的低功耗芯片,RTL8762CMF在物联网设备中应用广泛。但很多开发者在首次接触时,往往会在…...
PyTorch预训练模型‘解剖课’:以VGG19为例,彻底搞懂如何自定义输出层(避坑指南)
PyTorch预训练模型‘解剖课’:以VGG19为例,彻底搞懂如何自定义输出层(避坑指南) 当你第一次拿到一个预训练好的VGG19模型,兴奋地准备用它提取图像特征时,却发现自己被卡在了第一步——这个"黑箱"…...
BBDown完全指南:5分钟掌握B站视频下载终极方案
BBDown完全指南:5分钟掌握B站视频下载终极方案 【免费下载链接】BBDown Bilibili Downloader. 一个命令行式哔哩哔哩下载器. 项目地址: https://gitcode.com/gh_mirrors/bb/BBDown 你是否经常遇到想收藏B站优质视频却找不到合适工具的困扰?当网络…...
Armv8-A原子操作指令解析与应用优化
1. A64原子操作指令概述在Armv8-A架构中,A64指令集提供了一组强大的原子操作指令,这些指令在多核处理器环境下对实现线程安全的并发操作至关重要。原子操作的核心特性是保证特定内存操作的不可分割性——即这些操作要么完全执行,要么完全不执…...
放心API和4SAPI怎么选?从开发者选型角度看差异
很多开发者在选 Claude API 中转站时,都会遇到一个问题:**到底是选更偏个人友好的放心API,还是选更偏企业级的4SAPI?**这个问题没有标准答案,只有场景答案。---## 一、先给结论如果你的项目处于以下阶段:- …...
