検索
ホームページバックエンド開発PHPチュートリアルアリババのインタビュー体験と概要(データの研究開発、Javaの研究開発の方向性)

私が応募したポジションは「ソフトウェアR&Dエンジニア」です。面接会場に到着したとき、私は Java 言語を選択しました (対応する面接官がいます)。しかし、その後クロス面接が行われ、「データ研究開発」のポジションに昇進することになりました。

一方:

まずは自己紹介。

私: 「私は 2 つのプロジェクトに取り組みました。いくつかの論文と特許を書きました。また、アリババのビッグデータ コンテストにも参加しました。同時に、個人的な興味から、 についても少し読みました。 HDFS ソースコードの一部、私はHDFSの核となる考え方を理解し、非常に単純で不完全なHDFSを実装しました。あなたが書いた論文の革新的な点は何ですか? "

私: "私が書いている論文や特許は、主に 1 つの原則に従っています。それは、既存の理論やモデルを新しいシナリオに適用するというものです。 . まず、特異値分解から始めましょう...」 約数分後。インタビュアー

1

が私の話を遮りました:「あなたのやっていることはすべてデータマイニングの方向です。なぜデータマイニングに応募しなかったのですか?」私:「なぜなら、私の理解によれば、データ マイニングのポジションには、機械学習アルゴリズムに関する深い研究が必要ですが、私が行っているのはデータ マイニング アルゴリズムの応用に偏っているため、データ マイニングと配信に重点を置いて研究開発に投資したいと考えています。

面接官1: 「実際のところ、あなたの利点はデータマイニングを行ったことです。まず、面接するデータ研究開発の面接官を探しましょう。後で戻ってきてください。 「

私も機械学習アルゴリズムを体系的に研究しましたが、公開時間が短すぎて (数か月)、研究が十分に深くありませんでした。私はコンテストでいくつかのアルゴリズムしか使用したことがありません:

LR

RF

GBRT

。独自の利点は、データの理解、特徴の抽出、アルゴリズムの適用にあります。アルゴリズムの導出プロセスは明らかではありませんが、考え方は理解できます。あまりにも細かい質問をされるのが怖かったので、遠慮していました。しかし、面接官1の強い主張により、最終的には同意しました。 2 番目の面接官の「データの研究開発」という看板を見て、安堵のため息をつきましたが、幸いにもそれは「データ マイニング」ではありませんでした。 今年、「データ研究開発」の職にかなり多くの人が採用されており、その多くは小規模および零細金融サービスに就職します。面接後、「データ研究開発」の仕事の要件は次のようになると思います: 基本的な

SQL

ステートメントに習熟していること。筆記試験の質問があるため。 Alibaba はデータの研究と開発に独自の

ODPS-SQL

(

Hive

と同様) を使用するべきだと思います。このプラットフォームは非常に複雑ですが、面接時の要件はそれほど高くありません。基本的な組み込み関数と SQL ステートメント (select、group by…) をマスターするだけです。コンテスト中、私はインデックスやビューを使用せずに数万行の SQL コード (重複排除後は数千行) を書きました。組み込み関数をよく使用し、時々 UDF (ユーザー カスタム関数) を使用しました。 )。ただし、記述されたコードにはインデックス、ビュー、UDFは含まれません。最適化テストは受けていません(というか私もよく分かりません)。 データの研究開発に関連した経験があり、面接官はこの側面を非常に重視しているようです。アリババビッグデータコンペティションに参加しました。 データの研究開発に関していくつか意見があります。これは非常に重要であり、明確な心を持たなければなりません。私は主にコンテストのモデルについて話しています: データの前処理->トレーニングセット、予測セット

->

特徴抽出

->

さらなる処理->陽性サンプルと陰性サンプルの比率->トレーニング->予測。 もちろんMapReduceが書ければもっと良いです。アリババのプラットフォームはMapReduceを提供しており、おそらく仕事で使用されています。詳しい紹介はこちら: 超長文

ODPS MapReduce

はじめに 次に、2 人目の技術面接官とのコミュニケーションを開始します。 インタビュアー2: 「自己紹介をしてください。」

私: 「その他の経験を紹介しました。それでは、主にデータの研究開発に関する私の経験を紹介します。」私が参加したアリババのビッグデータコンテスト。

インタビュアー2: 「わかりました。まず質問しましょう。」

インタビュアーは私に SQL の質問をしました: user_id、brand_id、time、cnt (費やした金額)の 4 つの列を持つテーブルがあるとします。ユーザー B が各ブランド brand に対して購入した合計金額をこの表から選択します。

それを見たとき、私がコンテストで作ったものととても似ていて、ちょっと嬉しかったです。面接官と簡単なやりとりをした後、急いで書きました;でも、やはり間違えるのが怖かったので、面接官に見せる前に長時間確認しました2。ちなみに、文字列を処理する必要がある場合は、ODPS-SQLUDFを使用します。面接官は手順を見て、何も言わずに脇に置きました。

その後、私たちは主にアリババビッグデータコンペティションについて議論します。私が何をしたのか、どのようなモデルとアルゴリズムが使用されたのか、そして精度はどれくらいなのか。 (このセクションの議論に最も時間がかかります)

幸いなことに、私は主にビジネスとデータの理解について議論し、データマイニングアルゴリズムについては深く議論しませんでした。

話し合いはうまくいきました。それが終わった後、面接官2は私を面接官1の元に連れ戻しました。

帰ってからも、面接官1と自分の書いた論文について話し合いを続けました。以前書いた論文をまとめたので、考え方が非常に明確になりました。そして論文執筆の経験と得たことについて話しました。

一言で言えば、一次面接の面接官はとても優しくて会話も楽しかったです。

もう一度言いますが、個人的には、面接官には主に 2 つのタイプがあると考えています。1 つは、テクノロジーの習得の深さを判断するために、テクノロジーを使用して死ぬほど質問することです。もう1つは、簡単な専門的な質問の後に演技をしてもらい、スピーチを指導するタイプで、考え方や表現力、個人的な意見など総合的な資質を試されます。

もちろん、あなたが自分の気持ちを表現するのが苦手だと面接官が判断した場合、面接官はあなたに質問を続けることしかできません。

2番目のタイプの面接官に出会えて光栄です。面接はチャットと同じくらい簡単です。

ついに、無事合格しました。

2番目の面接官:

2番目の面接の面接官はJavaの開発者です。

最初に、競技と配信について説明します。その後、「大きなテキストからTop3の文字列を見つけてください」という大量のテキスト処理に関する質問を受けました。この分野については何も調べていないので、答えは良くありません。

Java質問:「JVMの構造について教えてください。」

ネットワークの質問:「TCP/IPの3つのハンドシェイクと4つのウェーブ」

それでは, JavaWEBについて質問を始めてください。

この点については今知りました。面接官 3 は言いました:「大丈夫です、あなたの理解を説明してください。」カート...) は存在しますか? 高い同時実行性を実現するにはどうすればよいですか? 「

この点が理解できず、面接官は自由にプレイさせてくれました。答えは良くありませんでした。」 インタビュアー

3

: 「それではアルゴリズムの質問をしましょう。2つの整数配列を入力し、配列、つまり2つの配列に共通する値を返します。」

実はこれに当時、私は少し混乱し、少し緊張しました。クイック ソート アルゴリズムを書き始めましたが、使用した方法は最良のものではありませんでした。面接官はあまり満足していませんでした。 後で昼食をとっているときに、

O(nlgn)

O(m+n)

を実際に並べ替えることができると思いました。他の人と議論しているときに、いくつかの特殊な状況では、これはハッシュのアイデアを使用して実際に実行できるのではないかと思いました。複雑度 O(K), K は配列内の最大値です。 インタビュアー 3: 「再帰の習熟度をテストしてください。関数を作成し、型

int

を入力し、逆の順序で整数の文字列を返します。例: input 123」 , "321" を返します。 は再帰を使用する必要があり、グローバル変数は使用できません。入力はパラメーターである必要があり、文字列を返す必要があります。"そのときは、reverse のみを返します。出力 (印刷) が行われ、何も行われなかった順に文字列を返します。 昼食後、他の人と議論しているときに、二分木の深さや葉の数などの問題を再帰的に解決するために使用する必要があるいくつかのアイデアを突然思いつきました。戻りが行われるたびに、前の戻り値が返されます。が追加されます。

この時、面接官はあまり満足せず、食事の時間になりました。すると、面接官

3

はこう言いました。「そうしましょう。私がデータ開発者を見つけるのを手伝ってあげるから、あなたは面接に行ってください。評価は彼に任せましょう。」 彼は乗り気ではありませんでしたが、それでも同意しました。やっぱり今回はパフ​​ォーマンスが悪すぎた。

午後に同じ質問をしないようにするため。昼食後、私はアルゴリズムの問​​題について他の学生と話し合いました。

そしてインタビュアー4ですが、これはまだ二人称の段階です。

面接官4: 「技術的な問題についてチャットして話し合っているかのように扱ってください。関連する経験について教えてください。」

これにより、以前と同様に、よりリラックスして話すことができます。関係のない人々への経験を一言で要約します。最後に、アリババのビッグデータ競争に焦点を当てます。

面接官4は競技に非常に興味があり、最初から最後まで競技に集中していました。主にモデル、アルゴリズム、機能について説明します。データを理解することに重点が置かれており、面接官 4 によってそれが認められました。

私は、「コンテスト中は、毎日データを見て特徴を抽出しなければなりません。これを数字だけで見ると本当に退屈です。しかし、それをユーザーの行動として扱います」と言いました。これは非常に興味深い分析になります。たとえば、あるユーザーが毎日特定のブランドをクリックしたのに、購入し続けた人がいることは明らかでした。

つまり、私はゲーム関連の事柄とデータについての私の理解を非常にリラックスして話していました。

ついに、無事合格しました。

三面

今年HRの面接にエントリーする多くの人が依然として落とされる可能性が高いと長い間聞いていました。だから、もっと注意してください。

後から知ったのですが、必ずしもHRではなかったのです。なぜなら、面接官は、数回の面接を通過した後も、申請者を入学させるかどうかについて話し合う必要があり、申請者が入学を許可されることが確認された場合には、オファーを与えるからです。解雇された人の中には、HRjjではなく、過去の業績不振を理由に技術面接官によって解雇された人もいるかもしれません。一般的に、HRが可決された後、データマイニングとアルゴリズムの候補者は他のポジションで解雇される可能性が高く、解雇されることはめったにないと聞きました。

しかし、面接官はとても優しかったです。おしゃべりをしているうちに、いろいろなことを話し始めました。

私たちは、技術スキルを向上させる方法、アリババのニックネームなどについて話し合いました。

面接の過程で、私は主に 2 つの点を強調しました (私自身の経験をもとに):

私は問題について他の人と話し合うのが好きなので、常に予期せぬ利益を得ることができます。さらに、プロジェクト、コンテスト、日常生活からの例も示されています。先ほど技術面接官の質問に答えていないとも言いましたが、他の面接生(面識なし)と個人的に話し合っているうちに、急に悟りを開くことができました。

仕事を人生の一部として捉え、楽しく働きましょう。これは主に、私がコンテスト中にどのようにしてつまらないものを面白いものに変えたかについて話します。

最後に、面接官は私に何か質問はありますか?と尋ねました。

私はこう言いました。「コンテストに参加したとき、私はアリ・ワンワンのグループに加わりました。そこには多くの社内従業員がいて、彼らを通してアリについてよく知っています。だから、これ以上聞くことはありません

終了

面接は終了しました。出てきてすぐに自分のステータスを見ると、「3パス」と表示されていましたが、しばらくすると突然「面接終了」に変わりました。 他の人からは、面接が終わるということは不合格を意味すると聞きました。

そこで外のスタッフに聞いてみたところ、「これは戻って通知を待つということです。」HR面接後のステータスは「3つの面で合格」「4つの面で合格」だそうです。 」、「面接終了」など。これは正常です。過去の総合成績も踏まえて審査しなければならないからだ。すべての「面接が終了」し、オファーオファーがないという意味ではありません。後で聞いたところによると、「全方位合格」した人でもOfferを受けられない人もいるそうです。

学校に戻った後、私はテキストメッセージを受け取るまで朝の38時まで待ちました。それから、興奮の夜。

まとめ:

基礎がしっかりしている人は、面接官に聞きたいことを何でも聞いてもらいましょう。しかし、このようにあなたの熟練度の深さを知りたいので、質問をやめるのは誰でも可能だと思います。

私にとって、基本的な知識は平均的です。データ構造、並べ替えアルゴリズム、再帰を書くことができ、いくつかの基本的なコンピューター ネットワークと基本的な概念と理論を理解しています。自分の競争、プロジェクト、論文、特許の利点を最大限に活用することはできません。

面接プロセス中、面接官の興味のポイントを把握し、面接官を有利に導くことが非常に重要です。もちろん、あなたの強みが面接官がよく知っている分野ではなくても、面接官が興味を持っている分野であれば、それに越したことはありません。私の面接官数名について、チャット中に、面接官 1 は私の論文と特許に興味があり、面接官 2 と面接官 4 はアリババに興味を持っていることに気づきました。 私はビッグデータに興味を持っていますコンテストでは、面接官3は私の基礎能力に興味があり、HRは私の協調能力に興味を持っています。面接官 3 は私の基本的なことだけを聞きたかっただけで、私は彼の強み (データマイニングと配布) を伝えようと何度も試みましたが、強引に私を引き戻されました。他の数名のインタビュアーに対して、私は意識的にアリババのビッグデータ競争に話題を変えました。たまたま、誰もこのコンテストについて深く理解していなかったし、ある程度の興味も持っていなかったので、その内容についての議論にほとんどの時間を費やしました。

要するに、自分の利点を最大限に活用することです。

無料で入手LAMPBand of BrothersオリジナルPHPチュートリアルCD / 詳細PHP 》 Essential バージョン、詳細については公式ウェブサイトのカスタマーサービスにお問い合わせください: http://www.lampbrother.net

PHPCMS二次開発http://yun.itxdl.cn /online/phpcms/index .php?u=5

WeChat開発http://yun.itxdl.cn/online/weixin/index.php?u=5

モバイル インターネット サーバーサイド開発 http://yun.itxdl.cn/online/server/index.php?u=5

Javascriptコースhttp:// yun.itxdl.cn/online /js/index.php?u=5

CTOトレーニングキャンプhttp://yun.itxdl.cn/online/cto/index.php? u=5

以上、アリババのインタビュー体験と概要(データの研究開発、Javaの研究開発の方向性)を内容も含めて紹介しましたので、PHPチュートリアルに興味のある友人の参考になれば幸いです。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Springboot怎么使用内置tomcat禁止不安全HTTPSpringboot怎么使用内置tomcat禁止不安全HTTPMay 12, 2023 am 11:49 AM

Springboot内置tomcat禁止不安全HTTP方法1、在tomcat的web.xml中可以配置如下内容让tomcat禁止不安全的HTTP方法/*PUTDELETEHEADOPTIONSTRACEBASIC2、Springboot使用内置tomcat没有web.xml配置文件,可以通过以下配置进行,简单来说就是要注入到Spring容器中@ConfigurationpublicclassTomcatConfig{@BeanpublicEmbeddedServletContainerFacto

JAVA发送HTTP请求的方式有哪些JAVA发送HTTP请求的方式有哪些Apr 15, 2023 am 09:04 AM

1.HttpURLConnection使用JDK原生提供的net,无需其他jar包,代码如下:importcom.alibaba.fastjson.JSON;importjava.io.BufferedReader;importjava.io.InputStream;importjava.io.InputStreamReader;importjava.io.OutputStream;importjava.net.HttpURLConnection;

nginx中如何升级到支持HTTP2.0nginx中如何升级到支持HTTP2.0May 24, 2023 pm 10:58 PM

一、前言#ssl写在443端口后面。这样http和https的链接都可以用listen443sslhttp2default_server;server_namechat.chengxinsong.cn;#hsts的合理使用,max-age表明hsts在浏览器中的缓存时间,includesubdomainscam参数指定应该在所有子域上启用hsts,preload参数表示预加载,通过strict-transport-security:max-age=0将缓存设置为0可以撤销hstsadd_head

Nginx的HTTP2协议优化与安全设置Nginx的HTTP2协议优化与安全设置Jun 10, 2023 am 10:24 AM

随着互联网的不断发展和改善,Web服务器在速度和性能上的需求也越来越高。为了满足这样的需求,Nginx已经成功地掌握了HTTP2协议并将其融入其服务器的性能中。HTTP2协议要比早期的HTTP协议更加高效,但同时也存在着特定的安全问题。本文将为您详细介绍如何进行Nginx的HTTP2协议优化和安全设置。一、Nginx的HTTP2协议优化1.启用HTTP2在N

Python的HTTP客户端模块urllib与urllib3怎么使用Python的HTTP客户端模块urllib与urllib3怎么使用May 20, 2023 pm 07:58 PM

一、urllib概述:urllib是Python中请求url连接的官方标准库,就是你安装了python,这个库就已经可以直接使用了,基本上涵盖了基础的网络请求功能。在Python2中主要为urllib和urllib2,在Python3中整合成了urllib。Python3.x中将urllib2合并到了urllib,之后此包分成了以下四个模块:urllib.request:它是最基本的http请求模块,用来模拟发送请求urllib.error:异常处理模块,如果出现错误可以捕获这些异常urllib

Nginx中HTTP的keepalive怎么配置Nginx中HTTP的keepalive怎么配置May 12, 2023 am 11:28 AM

httpkeepalive在http早期,每个http请求都要求打开一个tpcsocket连接,并且使用一次之后就断开这个tcp连接。使用keep-alive可以改善这种状态,即在一次tcp连接中可以持续发送多份数据而不会断开连接。通过使用keep-alive机制,可以减少tcp连接建立次数,也意味着可以减少time_wait状态连接,以此提高性能和提高httpd服务器的吞吐率(更少的tcp连接意味着更少的系统内核调用,socket的accept()和close()调用)。但是,keep-ali

Nginx http运行状况健康检查如何配置Nginx http运行状况健康检查如何配置May 14, 2023 pm 06:10 PM

被动检查对于被动健康检查,nginx和nginxplus会在事件发生时对其进行监控,并尝试恢复失败的连接。如果仍然无法恢复正常,nginx开源版和nginxplus会将服务器标记为不可用,并暂时停止向其发送请求,直到它再次标记为活动状态。上游服务器标记为不可用的条件是为每个上游服务器定义的,其中包含块中server指令的参数upstream:fail_timeout-设置服务器标记为不可用时必须进行多次失败尝试的时间,以及服务器标记为不可用的时间(默认为10秒)。max_fails-设置在fai

怎么利用Java实现调用http请求怎么利用Java实现调用http请求Jun 02, 2023 pm 04:57 PM

一、概述在实际开发过程中,我们经常需要调用对方提供的接口或测试自己写的接口是否合适。很多项目都会封装规定好本身项目的接口规范,所以大多数需要去调用对方提供的接口或第三方接口(短信、天气等)。在Java项目中调用第三方接口的方式有:1、通过JDK网络类Java.net.HttpURLConnection;2、通过common封装好的HttpClient;3、通过Apache封装好的CloseableHttpClient;4、通过SpringBoot-RestTemplate;二、Java调用第三方

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン