V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
1194129822
V2EX  ›  求职

阿里的大哥,可以帮小弟内推一下吗?

  •  
  •   1194129822 · 363 天前 · 7736 次点击
    这是一个创建于 363 天前的主题,其中的信息可能已经有所发展或是发生改变。

    能不能留一下宝贵的建议或指导或者内推一下,现在帖中不方便放个人的简历。希望您能留下邮箱或者微信,我把简历发给您。我在这先简单介绍一下自己。

    某高考大省一本计算机软件,工作三年以上。目前在杭州一家公司工作 3 年整,主要从事 Java 开发,现在是所在公司技术核心(技术 leader 加主程)。 领导信任,同事融洽,工作轻松。但是去阿里一直是自己的目标,外加以此做出的准备和付出的努力,以及考虑到的未来发展。

    我的最大优点就是觉悟高(只有努力一条路可走),外加行动力还行。毕业以来每天都学习 1-2 小时,几乎没怎么间断。从本公司的代码看起, 直到完全理解架构、业务、实现,再到读技术书籍各大网站技术博客,再到深入 Java 核心 API 的源码。公司就这百万用户,年流水不过亿,任我这么折腾,但是平台就这么大。 虽然一个大企业技术不是一个人,但是这就经验和平台。我深刻认识到这一点,经验和眼界不足,我就疯狂研究源码,从 JCF 、JUC 到 Spring 全家桶、Mybatis 、再到 Netty 。

    感慨 Java 程序员要学的太多,不说计算机、后端等相关知识,就是 Java 相关知识都特别庞大。记忆力不强只能一遍又一遍硬学,JUC 都学了十几遍,不过每次都有不同的收获也算值得。

    但是自己三年多没面试过,虽然工作不重,但还是有工作要做,不知道要准备成什么样子,该刷面试题,还是要仔细复习一遍,还是先去其他公司面一下。

    期望

    现在第一志愿就是杭州阿里,期望职位是阿里云、天猫、菜鸟的 Java 开发,给自己的定位是 P6 或 P6+。我知道人生七分天注定,但是也要把剩下的做好,把在自己身上出纰漏的概率降到最低。毕竟这是我的自荐,可能有些夸大的成分,如果有冒犯到大家,请不要生气。

    技能

    • Java 基础扎实,熟悉 Java 规范,仔细读过 Java 8 的语言规范和 JVM 规范。
    • 深入理解集合框架和 JUC 原理及源码实现,熟练掌握并发编程。
    • 熟悉 IO,熟练使用 Netty,熟悉 Netty 线程模型和线程池源码实现。
    • 熟悉 Spring 、Spring MVC 、Spring Boot 、Mybatis,并对其核心原理和源码有一定了解。

    源码的学习和心得

    重要的类仔细研究源码实现,比如 ThreadPoolExecutor 、ForkJoinPool 、AQS,特别重要的类一行一行研究源码,力保每行代码都知道是什么意思,为什么要这样设计,比如 ArrayList,ConcurrentHashMap 。但是认知有局限性,所以可能出现一些偏差,如果愿意指正,感激不尽。

    • ClassLoader,Java 8 只有 BootstrapClassLoader ( BCL )特殊,只有 BCL 有权力加载 java.包下的类,但是有非标准参数-Xbootclasspath/p 可以使自定义类取代 Java 核心 API, 比如 HashMap 之类。虽然 Java 层面无法获得 BCL 的引用,但是 Unsafe 的 defineClass 可以在 JVM 启动以后,也能让 BCL 加载自定义类,比如 java.test.JavaTest,但是无法替换核心 API 。ClassLoader 在 Java 11 (其实 Java 9 )发生了重大变化,-Xbootclasspath/p 被删除,核心 API 更加安全,ExtClassLoader 被删除,新增 PlatformClassLoader ( PCL ),当然不是换名这么简单。PCL 也有权力加载 java.包下的类,比如 module java.sql 就是其加载的。所谓的双亲委派模型也被抛弃了,现在 ClassLoader 加载的是 module 下的类,所以现在是先搜索类是否在当前 ClassLoader 加载的 module 下,然后交给父辈加载器,最后找不到会调用 SystemClassLoader 尝试加载 classpath 下的类(兼容 Java 9 之前的代码)。Tomcat 、Spring Boot 的类加载也不算复杂,Tomcat 广为流传的三个 common 、server 、shared 加载器其实都是 URLClassLoader 的实例,而且 7 及以后的版本这三个合而为一,只剩下 common 加载 lib,而内嵌情况下只有 WebappClassLoader 。Spring Boot 则扩展了 URLClassLoader 以支持 FatJar(jar in jar)。

    • 类卸载条件苛刻的多,Java 规范规定 BCL 加载的类不能被卸载,而 Class 和加载其的 ClassLoader 实例又相互持有,所以绝大多数 Class 不会被卸载,包括动态代理生成的。但是 defineAnonymousClass ( lambda 原理)生成的类不会被其 ClassLoader 实例记录,还有反射创建的 Method 对象,调用一定次数会生成 Class,但是其 ClassLoader 实例只加载这一个类,所以这几种情况类被卸载还是不难的。

    • ThreadLocal,ThreadLocal 只是一个 Key,起作用的是 ThreadLocalMap,其三种节点 null 、key=null 、正常节点,其中 run ( between two null slots ),每次 get/remove 如果在查找元素的时候发现 key=null 节点,则清理并 rehash 从定位到 runEnd 的所有节点,而 set 查找位置的过程中遇到 key=null 节点则会清理整个 run 。而扩容则是达到 2/3 阈值之后清理整个数组,如果清理过后元素数量还大于容量的一半则扩容。针对如此复杂并且低效的 ThreadLocal,Netty 提供了 FastThreadLocal 取代之,底层使用数组加索引直接访问,用空间换时间,自下而上的改造让 FastThreadLocal 不会出现内存泄露。

    • ConcurrentHashMap ( CHM ),CHM 在 Java 8 中直接重写,现在几乎是个并行 Map,是 JUC 最重要的类,原理简单,设计巧妙。理解 CHM 的 bin 意义、计数、扩容、遍历就能大致能弄清楚它。CHM 计数基本上照搬了 LongAdder,CHM 的 size 能超过 threshold 吗?能超过 capacity 吗? addCount(long x, int check)的 check 如何理解,为什么要加 mappingCount()取代 size()呢。CHM 怎么保证在扩容过程中遍历的呢。CHM 最有技巧的是并发扩容,此时 sizeCtl 高 16 是数组长度的标识,低 16 位代表扩容线程+1,通过数组分段实现并发(并行)扩容,不可谓不巧妙。但是 Java 8 扩容的时候是有 bug,这个直到 12 才修复。而且在扩容的过程中,有两点我不敢苟同,1.对单核处理器(逻辑)只有一个线程完成扩容,2.这个更重要,所有数据迁移完毕后,留一个线程 recheck,在这个线程没有 commit 之前,所有写线程都会自旋,recheck 时间依赖数组大小。线程的运行时间由 OS 调度,OS 不可能让一个线程一直运行,所以在两种情况下,效率不高,也会造成很大的 CPU 时间浪费。

    • AQS,虽然现在 AQS 及其子类已经不算特别重要了,但是其设计思想还是值得学习的。AQS head 节点代表的意义是什么,为什么从 tail 向 head 查找,独占模式和共享模式除了 Condition 只能在独占模式使用外真正的区别到底是什么呢,是独占模式只能有一个线程获取同步状态吗,那能不能用独占模式写一个 Semaphore 呢。带着疑问学习 AQS,理解也会更加深刻。

    • ThreadPoolExecutor 、ForkJoinPool 、Netty EventExecutor/EventLoop,ThreadPoolExecutor 基于 BlockingQueue,正所谓成也萧何败也萧何,BlockingQueue 基于 AQS,而 AQS 实现的独占锁现在性能和 sychornized 差了不止一个数量级,不仅如此,底层共享一个 BlockingQueue,造成效率低下。ForkJoinPool 是个先进的线程池,不仅每个线程都有自己的工作队列,还能在空闲时窃取其他的任务,已到达负载均衡,它是 JDK 中最重要的并持续维护的线程池,是众多并发并行结构的底层线程池,如 CHM 的各种 TASK 、CompletableFuture 、parallelStream 等等。但是其依然有缺点,实现非常的复杂,它就是 JUC 最复杂的类(体系),而且每个版本都有大改动,行为在每个版本也不一样,负载均衡如此复杂却没带来高效,如果是 Java 8 则不建议使用,因为 ForkJoinPool 会创建和销毁大量的线程,commonPool 更加不推荐使用。而 Netty 线程池体系非常庞大,几十个类构成,实现了 Future/Promise 模型,EventLoop 绑定一个线程,每个 EventLoop 都有一个工作队列,并且通过轮询实现了任务提交的负载均衡( ForkJoinPool 是执行的负载均衡,思想更先进),Netty 的线程模型和线程池给人巨大的启发,线程并不需要太多,依然可以有极高的效率,Netty 5 就是打算使用 ForkJoinPool 取代其本身的线程池,但是最终效果并不好,此版本也废弃了(还有其他原因)。我目前知道 Netty 线程池唯一坑点就是 EventLoop 被关闭后不会重建,除了 NioEventLoop,其他的线程池都会被 execute 提交的 runnable 产生的 unchecked exceptions 关闭(大坑)。

    • 当时好奇 Mybatis ( JDBC )增删查改的发送和返回到底是什么,用抓包工具分析 MySQL 的包(对应 OkPacket ),做了大量的测试,发现了没有开启 rewriteBatchedStatements 的 addBatch 就是循环提交,发现了更新操作的 Affected Rows 和 Rows matched 的区别,也发现了自增 id 和 Last_INSERT_ID 、addBatch 返回 ids 等线程安全的原理,原来这些是基于 MySQL session/JDBC connection,相当于 ThreadLocal,当然没有线程安全的影响。

    缺点

    • 经验和眼界不足,没有特大并发项目经验,只停留在各大技术博客分享的理论中。
    • 时间的限制,现在广度不足,对 MQ 、MySQL 、Redis 之类暂时停留在理论和使用上,主要在积累和总结经验,几乎没研究过源码。
    • 一般算法能力,曾经也疯狂刷过 LeetCode,比如处理线性表屡试不爽的滑动窗口法(双指针),可能觉得收益太低,所以把精力投在研究源码和业务学习上了,现在顶多手写快排。
    67 条回复    2020-12-23 11:42:52 +08:00
    1194129822
        1
    1194129822  
    OP
       363 天前
    能不能给个宝贵的建议或意见
    kanemochi
        2
    kanemochi  
       363 天前   ❤️ 1
    找个内推还不容易么,简历直接挂某招聘网站不就一堆过来要简历
    horx
        3
    horx  
       363 天前 via iPhone   ❤️ 1
    @1194129822 联系下我个人页的邮箱
    blindpirate
        4
    blindpirate  
       363 天前   ❤️ 1
    AFAIK, 阿里云、天猫、菜鸟已经不招 P6 了(或者需要特批),只有集团的某些子公司才招 P6 。
    s1syphus
        5
    s1syphus  
       363 天前 via Android   ❤️ 1
    学生党表示已经很厉害了,加油!你也可以到脉脉上试试看
    hanhan13
        6
    hanhan13  
       363 天前 via iPhone   ❤️ 1
    @1194129822 留个微信吧,我来推你
    reeco
        7
    reeco  
       363 天前 via iPhone   ❤️ 1
    wechat: ZW50ZXJfbmV3X3dlY2hhdA==
    最近正在找人
    hello2060
        8
    hello2060  
       363 天前   ❤️ 1
    同学,来澳洲吧。你这水平,我保证你 1 天 1000 澳元起。。
    niuroumian
        9
    niuroumian  
       363 天前   ❤️ 1
    @hello2060 如何去澳洲? 有好公司介绍吗?
    hello2060
        10
    hello2060  
       363 天前
    @niuroumian 我没有公司介绍,很偶尔我会转发几个猎头的赞助工作签证的澳洲公司,但网友们都说是初创公司,太累什么的。
    niuroumian
        11
    niuroumian  
       363 天前
    @hello2060 澳洲天气是否太热?和加拿大比有什么优势吗?软件工程师发展前景如何?
    hello2060
        12
    hello2060  
       363 天前
    @niuroumian 没了解过加拿大,我觉得加拿大的好处是离美国近。拿到加拿大国籍容易去美国工作。澳洲国籍能拿 e3 签证去美国其实比加拿大人拿的 tn 签证要好,可是实在离美国太远了。只有亚马逊每年会到澳洲来招人,所以去美国工作还是加拿大更好些。

    本身澳洲程序员的话收入不是太高,大公司可能 13-15 万澳元税前吧。我上面说的 1000 一天是我这种 contractor 也就是外包的工资,比正式员工高一些。

    天气还好吧,现在是夏天了我这最低温度还在 10 度以下。。
    niuroumian
        13
    niuroumian  
       363 天前
    @hello2060 感谢回复!如果想做 contractor 怎样拿工作签证呢?是不是得找一个挂靠公司呢?
    seven123
        14
    seven123  
       363 天前   ❤️ 1
    哎,比我厉害的人还比我努力,难受啊
    Foralrec
        15
    Foralrec  
       363 天前   ❤️ 1
    foralrec#gmail.com 阿里云 云原生 p6+ & p7
    响应速度快
    这帐号就是我以前专门注册来做内推的.
    hello2060
        16
    hello2060  
       363 天前
    @niuroumian 一种是直接申请绿卡,来澳洲找工作。如果这条路走不通,那就找个工作,让公司给你办工作签证,然后满足条件了转绿卡,可能是这样。反正肯定要找到工作先的。

    高工资的 contractor 只有 zf 部门有啦,一般都要求公民身份,有的还有保密权限的要求。来到澳洲 5 年之后基本上才有机会考虑这些。

    但 4 年就可以入籍了,胆子大的话可以直接买张机票去美国,大公司面一轮下来,e3 签证很容易申请的,公司一般都会给你办的。
    poppersd
        17
    poppersd  
       363 天前   ❤️ 1
    老哥牛逼 祝好
    wgbx
        18
    wgbx  
       363 天前   ❤️ 1
    出师表
    woshiaha
        19
    woshiaha  
       363 天前   ❤️ 1
    杭州现在不一定要去阿里 阿里给的薪资大厂里面也就中游 而且工作氛围有点差
    从你文章列举的知识点来看我感觉你理解还是可以的 可以把算法准备准备 项目架构经验整理一下 面一下杭州字节和杭州快手 这俩内推帖子这论坛就有不少
    还有上海杭州的一些外企也可以试试 前提是要准备英语面 可能准备周期更长一些
    至于阿里的内推 你简历挂 boss 上就有一大把了 由于 kpi 的关系 阿里的招聘轰炸密集程度感觉仅次于外包
    wdytoya
        20
    wdytoya  
       363 天前   ❤️ 1
    能静下心吃透源码的楼主值得鼓励。当然到大厂你就会发现技术的深度是一方面,还要有广度,这个广度不单是技术的,也包括业务的,也包含协作的,楼主自己也自知由于公司或者时间的限制能接触到的东西还不够多。但如果你真要面试的话,个人建议还是多了解一些,好好准备一下总不是坏事,当然这种准备不可能说让你去把所有框架的源码都看一遍,但也不应该只停留在了解或使用的层面,应该要准备到面试官给你一个应用场景,你立即能反映出来在这个场景中哪些模块可以套哪些框架,并且如何进一步优化,只要能把每一块都答到,并且每一块的主思路都差不多,那基本上就可以认为你这题答得八九不离十了
    以上是我的个人建议,如果你有兴趣来支付宝做业务开发的话,欢迎投递简历到 [email protected]
    luvsic
        21
    luvsic  
       363 天前   ❤️ 1
    @hello2060 这个薪酬对比国内大厂好像一般,不过不用 996 很爽
    PerpetualHeng
        22
    PerpetualHeng  
       363 天前   ❤️ 1
    henghengheng996,直接加我
    PerpetualHeng
        23
    PerpetualHeng  
       363 天前
    上面是我的微
    zhengdutech
        24
    zhengdutech  
       363 天前   ❤️ 1
    兄弟 很棒,考不考虑给我司兼职下,做技术指导。vx:979433196
    zzzzming
        25
    zzzzming  
       363 天前 via Android   ❤️ 1
    老哥,考虑网易吗?考虑的话可以看看我之前的帖子
    mosesyou
        26
    mosesyou  
       363 天前   ❤️ 1
    @Foralrec 云原生应用团队还有 hc 么
    rambo92
        27
    rambo92  
       363 天前   ❤️ 5
    确实是刚毕业 3 年的孩子,对阿里还有着大厂期待😁
    hepin1989
        28
    hepin1989  
       363 天前   ❤️ 1
    来啊,投递我们这里。[email protected]-inc.com ,你可以看下我的其他帖子
    wysnylc
        29
    wysnylc  
       363 天前   ❤️ 1
    人才
    fcoolish
        30
    fcoolish  
       363 天前   ❤️ 1
    我感觉进大厂挺难的,你确实做到一些代码和框架细节的深入研究甚至有自己的理解。
    但是现在要求不仅是理论深度,还有算法考核和架构设计,缺一不可。
    Foralrec
        31
    Foralrec  
       363 天前
    @mosesyou 可以发邮件我们沟通下.
    bk201
        32
    bk201  
       363 天前   ❤️ 1
    有啥想不开的要去阿里?那么多一线
    Bijiabo
        33
    Bijiabo  
       363 天前   ❤️ 1
    找个正经公司吧,别去阿里
    kilen3a
        34
    kilen3a  
       363 天前   ❤️ 1
    @woshiaha 字节 快手还是算了吧,都是大小周,不至于
    DyingSwan
        35
    DyingSwan  
       363 天前   ❤️ 1
    默默顶贴
    EdwardXia
        36
    EdwardXia  
       363 天前   ❤️ 1
    加油
    lwlizhe
        37
    lwlizhe  
       363 天前   ❤️ 1
    话说阿里面试重算法不
    zhangzhang
        38
    zhangzhang  
       363 天前   ❤️ 1
    @hello2060 #12 现在给 sponsor 的公司太少了....有靠谱的猎头推荐吗?
    cctv1005s927
        39
    cctv1005s927  
       363 天前   ❤️ 1
    cctv1005s#gmail.com

    阿里云,收到邮件秒回,工作详情邮件聊
    hello2060
        40
    hello2060  
       363 天前
    @zhangzhang 我工作找的不多,猎头认识的也不多。手头只有这一个 [email protected] ,你给她发信,让她把你加到 mail group 里面,她会不定期的发布她有的一些工作,但似乎主要是游戏相关。她也在 linkedin 上 https://www.linkedin.com/in/bronwynnlusted/ 你可以关注她,看看她朋友圈里有没有别的猎头。。
    pkwenda
        41
    pkwenda  
       363 天前   ❤️ 1
    可以,技术强,态度还真诚,其实你这水平挂个简历就够了
    SuperManNoPain
        42
    SuperManNoPain  
       363 天前 via Android   ❤️ 1
    太强了
    27149
        43
    27149  
       363 天前   ❤️ 1
    很靠谱的小孩啊,虽然看不懂,但是感觉很认真,6~6+应该没啥问题
    1194129822
        44
    1194129822  
    OP
       363 天前
    下班到家,在公司怕被发现,不敢太猖狂😂
    1194129822
        45
    1194129822  
    OP
       363 天前
    @hello2060 说的太夸张了,我能在中国混好都不容易了,一步一步走😂
    1194129822
        46
    1194129822  
    OP
       363 天前
    @woshiaha 是的,之前也有自称淘宝,钉钉之类的,打电话问我有没有想跳槽,一个我怕是骗子,其次我怕是刷 KPI,我觉得内推还是可靠一些。
    1194129822
        47
    1194129822  
    OP
       363 天前
    @kanemochi 非内推,很容易成为刷 KPI 的产物,还是谨慎一点。
    talex
        48
    talex  
       363 天前
    菜鸟部门缺人,非常缺,p6p7p8 都很缺。
    绿色软件:YTY5MDA2MjkxOQ==
    建议去小公司练练手再投,顺便说一下,可以年前面试,年后入职。

    其他人有需要的也可以内推,内推阿里的其他岗位也可以的,官网上找好岗位,链接发我就行。
    linnana
        49
    linnana  
       363 天前
    给个建议,如果真对阿里感兴趣尽量做好面试准备,特别是八股文一类的,先挑几个中小公司练练手查缺补漏
    不然初次面试面得差后面就很难获得其他部门的青睐了,系统里有记录的
    zy445566
        50
    zy445566  
       363 天前 via Android
    去了之后的你:什么垃圾公司,垃圾领导
    yhxx
        51
    yhxx  
       363 天前
    可以给我一份简历,淘系技术部(天猫 /淘宝 /聚划算等的技术团队都在这个部门)急求 P6 、P7,前后端测试都有需求
    dGlhbmhhbmcuanRoQGFsaWJhYmEtaW5jLmNvbQ==

    不知道楼上的“阿里云、天猫、菜鸟已经不招 P6 了”这个消息是从哪来的
    NilChan
        52
    NilChan  
       362 天前 via Android
    @hello2060 澳洲 13-15 万应该是 Senior 了吧?
    hello2060
        53
    hello2060  
       362 天前
    @NilChan 这个其实我不是很清楚哈哈是不是有点误导了,我自己的两份 java 工作都是在 zf 部门,没有在企业里干过。但我以前认识的一个印度人很能来事,各种面试,虽然水平很差。他和我说 java 工资比 c++高,基本上 13 万都有的。我结合自己找 c++的经历,c++是工资低一点,12 万左右已经很好了,所以我觉得 13 万应该是正常的。也许也不要太 senior 吧,可能 3 年经验就够了?

    不过 15 万的话,看起来是挺高的,估计经验要求高一点
    alw
        54
    alw  
       362 天前
    我觉得还是 github 与博客有说服力 0.0
    NilChan
        55
    NilChan  
       362 天前
    @hello2060 15 万真的已经很高了。我在加拿大,除了 google 微软这种,一般公司的非 Senior 的开发大概也就 11 - 12 万。而且我对标我在澳洲的同学,加拿大的工资是比澳洲要高的。
    keshawnvan
        56
    keshawnvan  
       362 天前
    零售云事业部,感兴趣的话可以加我 vx:fkx0703
    kuner0614
        57
    kuner0614  
       362 天前
    看起来很优秀,没有建议。给楼主加个祝福 buff,加油嗷
    xw
        58
    xw  
       362 天前
    加油
    joejo
        59
    joejo  
       362 天前 via iPhone
    联系我
    joejo
        60
    joejo  
       362 天前 via iPhone
    JoeZhao16
    joejo
        61
    joejo  
       362 天前 via iPhone
    阿里安全和阿里云都可以帮你内推,请加我 v 呀
    Misakas
        62
    Misakas  
       362 天前
    哥哥头发还多吗
    yukong
        63
    yukong  
       362 天前
    阿里云、天猫、菜鸟、蚂蚁都可以内推 欢迎勾搭
    邮箱 base65: eGlvbmdwaW5nLnhwQGFsaXBheS5jb20=
    Betsy
        64
    Betsy  
       361 天前 via iPhone
    老哥很强,期待老哥后续,将来入职阿里了,务必回来分享啊
    jaryur
        65
    jaryur  
       361 天前
    菜鸟业务团队后端急缺人(P6/P7) amFyeXVyMDAwMUBnbWFpbC5jb20=
    Attan
        66
    Attan  
       348 天前
    哥们考虑阿里云钉钉不 可以发简历到我邮箱哦 [email protected]-inc.com
    Currybro
        67
    Currybro  
       347 天前
    同事零售事业部,感兴趣可以加下 vx MTU5MjEyNzk2MDA=
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   951 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 19:40 · PVG 03:40 · LAX 11:40 · JFK 14:40
    ♥ Do have faith in what you're doing.