开发工具分享
  • 首页
  • 计算科学
  • 文化旅游
  • 项目和网站
    • OSSEZ 计算技术
    • USRealEstate 社区
    • 地区文化
    • CWIKI.US
    • BUG.OSSEZ.COM
    • RSS.OSSEZ.COM
CWIKIUS.CN
一个有独立思考和温度的清新站
Computer Science

近年北美地区 IT 岗求职之怪现状

如果非要用一句话来描述下现在北美地区 IT 相关职位的求职现状就是:互相毫无意义的伤害,互相毫无意义的折磨。 感触 经历过一段时间的求职和招聘后,有下面的一些感触,不知道同学们是否同意呢? 发的简历都没认真看 发了不少简历,不少公司可能真的都没有认真看,直接就丢垃圾箱里面了。 有些公司还是非常奇葩的,每年都在不停的招人招人,每过 3 个月,同样的岗位就放出来一次,然后每次你投的简历,一点下文都没有。 如果要说个公司名称的话,Fidelity Investments 可能就是一个非常典型的代表了,常年在招聘网站上被刷屏,然后投的简历一点下文都没有。 这里说的没有下文就是没有收到拒绝消息,也没有收到进入下一步的消息,完全就是没有消息。 当然,这种公司不只它家一个,好多公司都是这样的,完全就是为了在招聘平台上刷存在感。 发简历到第一次响应的时间过长 不知道为什么,现在的公司从投简历到第一次响应的时间通常都在 1 周甚至 2 周以上。 以前,通常在 2 到 3 天,不管是不是需要,基本上都有个消息说希望了解下,或者直接就拒绝了。 目前来看,这个第一次获得反馈的消息通常要在 1 到 2 周,甚至有 3 周的。 等到 3 周后收到消息,连自己都忘了我申请过这个公司吗?然后就从邮件历史中去找这个公司的名字,然后发现,哇塞居然是 21 天前发的邮件或者提交的申请了。 屁大的公司也上来就做题 另一个感触比较深的就是不管公司大小,不管职位需要还是不需要,上来就做题。 题目有难的,有简单的。比较难的题目通常是比较复杂的算法,如果你没有刷题过的话,真的要在比较短时间内做出来是很有难度的。 别说出结果了,就算把代码跑通都不那么容易。等入职后就发现那些刷题一点屁用都没有,然后还在不停的刷呀刷。 有些题目简直就是令人发指,不仅仅是是算法,简直感觉就是在侮辱你智商。更恶心你的是给你面试的人自己都没有把代码跑通过,随意在上网找了个题目,让你去做。 个人认为这样的同事是非常不负责任的,在你让别人做题目之前,你是不是也应该花点时间看看让别人做的题目呢? 做题目是小事情,但是可以看到整个团队的精神面貌。 面试的过程就是这样的互相折磨的话,以后的日子也不好过。还真得 “谢谢” Google 又给创造了一个做题产业。 面着面着就没有下文了 有个公司很有意思的,公司在电子邮件中说的非常明确每一步的步骤是什么,时间点是什么。 这给人的感觉非常好,因为能够及时了解面试进程,避免大家的互相折磨。谁知道就是这么一个感觉比较好的公司,面着面着就没有下文了。 当把代码提交后,公司说需要更长的时间来查看,公司计划在 5 天后给出明确的消息,这都过去 30 天了,没有任何动静,就好像公司已经忘了这件事情了。 更有意思的是,一个公司经过第一轮的接触,感觉还不错,说把和你第一轮面谈的内容和公司反馈下,然后就一直没有什么动静,2 周或者 1 个月以后发了一个邮件过来说是很抱歉的通知你,你的这个职位公司预算取消了。 我去,在发布职位的时候难道都没有想明白的吗?如此随意? 当然,也有好的公司。我就经历过一个公司非常明确的告诉我,公司在第一轮后的结果会在 2 周以后,同时,这个结果公司也遵守了,不管结果是什么,有和没有是 2 回事情。 能够及时回复邮件的公司都已经算是好公司了。 总结 经过这段时间的面试和接触,整体感觉就是说是不少公司的面试过程很多时候都是表面化,至于能不能找到工作,主要是看看自己的运气了。 如果你运气好的话,可能会有比较多的机会。 关于刷题:很多人会在做题的时候被刷掉,其实大可不必感觉到什么,这些所谓的做题很多时候是自欺欺人的东西,如果你真喜欢计算机,你不但应该做题,还需要了解为什么是这样设计的。 如果是为了刷题而刷题,时间长了也就沦为了一个刷题的机器了,感觉这样总是缺少点灵魂。 关于简历 :不要因为一个公司的职位拒绝了你,你就说这个公司可能不适合我啥的,其实只是你的简历没有被送到正确的人的手上罢了。 作为求职的你来说,就是不停的投,如果这个公司还有其他职位,就投其他职位的,重复投也没啥大不了的,说不定就有人看到了,然后你就进入下一轮了。 提早准备总不是坏事,祝福所有人在求职路上总能碰到正确的人,都好运。   https://www.isharkfly.com/t/it/15039

2023年10月10日 0Comments 514Browse 0Like Read more
Computer Science

Java @Override 注解

在代码中,你可能会看到大量的 @Override 注解。 这个注解简单来说就是让编译器去读的,能够避免你在写代码的时候犯一些低级的拼写错误。 Java @Override 注解用来指定方法重写(Override),只能修饰方法并且只能用于方法重写,不能修饰其它的元素。 @Override 注解可以强制一个子类必须重写父类方法或者实现接口的方法。 用途 @Override 主要是为了让编译器用的,告诉编译器使用这个注解的方法是重写(Override)的方法。 因为 重写(Override)的特性是,参数和返回以及方法名都不能变。 如果在写代码的时候,因为方法名不小心敲错了,在没有 @Override 这个注解之前是比较难发现的,所以我们使用 @Override 能够告诉编译器,这里对 重写方法注意下。 必须吗 这个注解不是必须的,在 JDK 的早期版本,没有注解之前,我们对重新的方法通常都不没有任何标记。 这个会导致一些书写错误,没有办法在编译的阶段发现。 所以不用这个注解也没有关系,但用了这个注解通常能够让代码更加可读一些。     具体开始使用是从 JDK 1.5 版本开始的。   https://www.isharkfly.com/t/java-override/15038

2023年10月09日 0Comments 420Browse 0Like Read more
Computer Science

对一门不是非常熟悉的语言是怎么面试的

公司是一个基础通讯类的公司,需要的职位是一个高级系统和软件工程师。 职位要求,是一个完全不怎么大众的语言:Elixir。 没听过,这就对了,这是一个函数式的语言,可以认为是 Erlang 的升级版本,Erlang 多用在交换机设备上的开发语言,这个语言其实还是比较小众的。 RabbitMQ 就是 Erlang 开发的,虽然 Erlang 在整个项目中的比例并不是很高。     职位需求 这个职位的需求就是使用 Elixir 语言来处理 HTTP 的 API。 这个 API 主要是用户电子邮件相关的内容,我不知道为什么他们选择 Elixir,可能主要还是比较好和现有的系统保持一致吧。 面试 整个面试的时间是 1 个小时。 在这一个小时中主要聊了下对 HTTP 的请求,API 的调用是不是熟悉。不管用的是什么语言,只要你写过 API,这部分还是比较容易说清楚的。 下一步就是在线的 Coding 了,这个在线的代码也是非常简单的,唯一麻烦的地方是 Elixir,因为从来没有接触过这个语言,突然在平台上要用 Elixir 这个语言还是有点懵逼的。 好在示例程序什么都比较简单,就是对照下 API 的调用文档,利用模拟的环境写几个 API 接口。 只要有示例程序,要写其他的还是很简单就完成了,因为对 API 的写法,不管什么语言都差不多。 好在他们提供了一个 API 的示例程序。 在这部,都已经顺利完成了所有的代码,也正确没有问题。 随后他们就提出是不是给我一个回家做的题目,要求是完成这个题目,然后尽快提交给他们。 回家做题 对于给出的题目,稍后我在下面的文章中给出。 如果你是使用其他的比较高级的语言,这个应该没有什么问题,可以说是非常简单的。 但是 Elixir 是一个函数式的语言,同时循环是不可变的,在这里哪怕是一个循环都要折腾半天。 本着,既然我答应你回家试试了,那么我就抱着一定要做出来的想法来做的,也在规定的时间把代码提交了。 结果 大概 1 周后,收到了他们比较客气的拒绝信。 理由是找到了更加合适的人了。 点评 找到更加合适的人,这个不足为奇。因为 Elixir 这个语言实在是非常小众的语言,有比较大的学习曲线。 不是说,你今天开始看文档,明天就能全部看明白的那种。 这个语言没有好的集成 IDE 开发环境,代码写起来不是那么友好,高级语言非常容易实现的东西,Elixir 需要比较多的步骤才能完成。 其实,对公司本身来说,这次面试并没有什么负面评价。主要原因是,在投简历的时候没有仔细看看需要的语言,主要是看了 API 编程能力。 通常来说,这个都不是什么问题。 唯一感觉有点不好的是,公司方面对面试者的反馈比较差。在我提交代码到对方邮箱后,没有任何邮件说邮件已经收到了。完全不知道邮件是不是已经发送过去了或者他们在进行评估什么的。 一般来说,2 到 3 天没有消息的话,感觉都不会非常靠谱,所以也没有抱有太大希望。 只是希望的是,他们应该可以通过更好的沟通让整个流程更加好,可惜他们没有做到,有点把面试当儿戏的意思。 题目和解答 Program 1 Using input_data1.txt, complete the code in file program1.exs You can install Elixir on a machine you work on, or you can use Try It Online or something similar. tio has an input section where you can paste in the input data. input_data1.txt (3.6 KB) 源代码如下: defmodule M do def read do IO.read(:stdio,:all) end def input_to_list( input ) do # turn single string into a list of input values String.split(input) end def calculate([head | tail], acc) do calculate( tail, head + acc ) end # finish def calculate( [], acc ) do acc end end IO.inspect M.read() |> M.input_to_list |> M.calculate(0) Program 2 Extending the technique of Program 1, write a program that given 3 lists, selects the greatest even value at each iteration and adds it to an accumulator. For example: [ 5, 8, 9, 2, 4, 7 ] [ 9, 1, 6, 7, 9, 6 ] [ 4, 4, 8, 6, 2, 4 ] sums the list: [ 4, 8, 8, 6, 4, 6 ] and a sum of 36 The lists to use are: [184, 89,…

2023年10月07日 0Comments 450Browse 0Like Read more
Computer Science

Jackson 的 SNAKE_CASE 反序列化

最近项目中有关 JSON 的序列化和反序列化中,我们遇到了一个问题就是 category_id 我们在定义对象的时候使用的是 categoryId。 当程序进行反序列化的时候,我们获得的对象值为 NULL。 这是因为 jackson 提供了一个命名规则,如果你是希望进行这种类型的映射的话,那么需要把命名映射规则设置为:SNAKE_CASE objectMapper 对象初始化的时候设置 有 2 种设置方法,如果你希望你在 objectMapper 对象初始化的时候进行设置,那么需要添加下面的代码: objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); objectMapper.setPropertyNamingStrategy(PropertyNamingStrategy.SNAKE_CASE); 那么这样,我们就等于告诉 objectMapper 在对对象进行序列化和反序列化的时候,使用 SNAKE_CASE 命名方式。 @JsonNaming 注解 可以在直接需要进行序列化和反序列化的类中使用: @JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) 上面的代码就可以了。 这样的意思就是不管是不是全局设置了命名规则,只要用到了这个类的序列化和反序列化都会使用上面的规则来进行字段映射。     那种方式更好 对我们当前的项目来说,我们可能更加倾向使用注解的方式。 需要知道的是 objectMapper 对象的初始化可能在不同的服务类中被初始化多次。 当然如果你使用的是 Spring 的配置文件,那么可以一次配置完成。 延伸阅读 Jackson 中的配置方式,不仅仅只有上面我们提到的,还有下面的几种方式。 SNAKE_CASE:所有字母均为小写,并在名称元素之间使用下划线作为分隔符,例如 snake_case。 UPPER_CAMEL_CASE: 所有名称元素,包括第一个,都以大写字母开头,后跟小写字母,并且没有分隔符,例如 UpperCamelCase。 LOWER_CAMEL_CASE: 所有名称元素,包括第一个,都以小写字母开头,后跟小写字母,并且没有分隔符,例如 UpperCamelCase。 这个配置方式是默认的配置方式。 LOWER_CASE:所有字母均为小写字母,没有分隔符,例如 lowercase。 KEBAB_CASE:名称元素之间用连字符分隔,例如 kebab-case。 LOWER_DOT_CASE:所有字母均为小写字母,用点连接字符,例如 lower.case。     根据 Java 和 Json 的命名规范来说,其实大家都有点乱命名,但对一些比较规范的项目,通常单词之间我们使用下划线多。 我们并不太使用横杠的方式来处理命名。 所以,很多时候,你可能需要使用 SNAKE_CASE 来标记你的命名规则。   https://www.isharkfly.com/t/jackson-snake-case/15034

2023年10月07日 0Comments 636Browse 0Like Read more
U.S.

美联航银卡行李标签

当你对应的美联航级别变化的话,可以拿到美联航对应级别的行李标签。 这个行李标签比较小,还是塑料的,就图一乐。   https://www.isharkfly.com/t/topic/15032

2023年10月06日 0Comments 471Browse 0Like Read more
Computer Science

有点奇葩的消息——CEO 2 个月之前也离职了

这个消息还是有点奇葩的。 在找工作一段时间后,有原公司的同事联系了下互相通报了下各自的情况。     如有看过:北美 2023 被裁员的感悟 这篇文章的大致都知道公司在4个月前,也就是2023年6月份的时候进行了大规模的裁员,公司也只保留了最低的运营水平。 但实在没有想到的是公司的原 CEO,居然在今年的 7 月底也离职了。看了 LinkedIn 应该是跑到另外一家公司去做咨询工作了。 这个消息还是蛮有意思的,因为这个 CEO 并不是从外部雇佣的 CEO,这个 CEO 是公司的创始人之一。 这样一来,整个公司的 5 个创始人,已知的已经有 3 个人走了,余下的 2 个创始人可能早就走了或者还在公司,这个都说不清楚。 简单来说的结论就是在公司 6 月份进行所谓的裁员之后,公司应该是被卖掉了。 在公司卖掉之前,公司肯定是要降低运营水平削减开支。 这就也不难理解为什么公司对一些不重要的项目统统砍掉,因为在公司进行出售之前,这些项目对要出售的公司都是负资产。 有意思的地方 但公司 CEO 在 2 个月之前的离职还是有点意思的。 这样看来,公司这波骚操作裁员的主要目的就是为了公司在出售之前能够卖个好价钱。 并且,公司的管理层的下手还是非常快的,要知道,美国政府是在 5月22 好宣布新冠紧急状况的终结,公司的正式裁员在 6 月初,赶在了第 2 季度的财报之前。 在第 2 季度财报出来以后,公司应该马上就卖掉了,7 月份原 CEO 离职。 很多东西在开始的时候可能看不明白,等过几个月慢慢都会明白了。 这样的话,留在原公司也并不是一件非常好的选择,因为公司的经营本身就遇到了不小的困难,留在那里也感觉是等着裁员罢了,早晚而已。   https://www.isharkfly.com/t/ceo-2/15031

2023年10月06日 0Comments 504Browse 0Like Read more
Computer Science

缅因 York —— Barrell Mill Pond Dam

Barrell Mill Pond Dam 建造于 1700 年代。 因潮汐的作用,York 河水将会每天都会涨潮退潮,因此人们在这里修建了一个 Barrell Mill Pond Dam,建这个水坝的作用是被用来设为附近的面粉厂和锯木厂提供电力。 在最初的18 世纪末期,通过潮汐发电,已经能够每天产生 63 千瓦的电力,并且每天能够提供 10 个小时的电力供应。     在太阳下山之前,潮水已经退去了。 York 河水的水平面已经下降了很多,可以赤脚的走上滩涂。 目前, Barrell Mill Pond Dam 已成为了一个历史景点。历史上的工业文明已经看不见了。 只能看到一些留下的房子和历史遗迹了,这些历史建筑也被保留了下来。     在 2023 年,York 当地机构新建了一个人行步道,能够让人们从 Dam 走上步道并从桥下过桥。     上图的照片就非常明显的感觉到 York 河水的潮汐水位差。 历史的故事永远的慢慢保存在照片中了。   https://www.isharkfly.com/t/york-barrell-mill-pond-dam/15028

2023年10月03日 0Comments 483Browse 0Like Read more
Computer Science

JIRA 如何在项目之间移动 Issue

需要使用 JIRA 的查找功能。 把需要移动的 Issue 先全部找到,然后选择 Tools 下面的所有 Issues     批量操作页面 在随后的页面中,将会出现批量操作的页面。     在这里,可以对需要进行批量操作的问题,进行全部选择。 然后单击下一步继续。 选择操作选项 在下一步的页面中,选择需要进行的操作。 在这个操作中,我们可以选择移动问题。     然后单击下一步继续。 选择移动对照表 在这个界面中,需要对移动的问题选择移动对照表。 主要的内容是从哪个项目到那个项目。 同时针对需要移动的问题的类型也需要选择对照表。     选择完毕后单击下一步继续。 对组件进行选择 在随后的界面中,需要对移动的组件进行选择。 就是原来的组件和移动的后的组件是进行怎么样的对应的。     完成对应后,单击下一步继续。 需要注意的是,针对每种类型,都需要对组件进行选择和对应。 确定配置 最后,需要做的就是确定配置后完成移动。     合并进程 根据问题的多少,在这里可显示了合并的进程。 通常这个合并并不需要花费多长时间。     当合并完成后,到合并后的项目中确定项目都已经合并完成好了。   https://www.isharkfly.com/t/jira-issue/15027

2023年10月03日 0Comments 438Browse 0Like Read more
U.S.

韩国出入境表

在路过韩国的时候,虽然没有用上韩国的出入境表。 还是拷贝一个电子版以备参考。   https://www.isharkfly.com/t/topic/15026

2023年10月03日 0Comments 539Browse 0Like Read more
Computer Science

Windows 一个很有点奇葩的路径问题

在 Windows 上设置 Path 是很多项目都首先需要做的事情。 最近不知道为什么 Windows 11 遇到了一个奇葩的 PATH 不能识别问题。     如上图显示的 M2 % 的这个路径,不知道为什么就突然识别不了了。 解决办法 解决办法就是使用上下移动的按钮把路径中的配置上下移动一下。     然后再保存退出。 感觉 Windows 需要这样调整下才能激活似的。 有点奇怪,不过好在问题解决了。   https://www.isharkfly.com/t/windows/15021

2023年10月01日 0Comments 489Browse 0Like Read more
12
Archives
  • June 2026
  • May 2026
  • April 2026
  • March 2026
  • February 2026
  • January 2026
  • December 2025
  • November 2025
  • October 2025
  • September 2025
  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • June 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
Categories
  • Computer Science (2,367)
    • Confluence (663)
    • Gradle (12)
  • U.S. (511)
  • 文化旅游 (146)

COPYRIGHT © 2020 CWIKIUS. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

湘ICP备2020018253号-1