題:
受訪者提供了當前雇主的代碼示例-我應該接受嗎?
Alpha
2016-10-22 20:36:40 UTC
view on stackexchange narkive permalink

我曾與一個人進行過技術面試(軟件開發),並且通常不要求提供代碼示例。撇開理由,這個人願意向我展示他們為當前雇主所做的代碼。

我應該接受嗎?我可以保留副本嗎?

這是我不應該這樣做的原因:

  • 這是另一家公司的財產
  • 我尚未與該受訪者或其公司達成任何法律安排
  • 即使我不問,也沒有任何證據,因此如果遇到麻煩,我也無法為自己辯護

這是我認為應該這樣做的原因:

  • 這是非常有價值的信息,尤其是在評估代碼質量和清潔度時
  • 他們說很好,因為他們可以隨時再次寫出來。
  • 我可以從候選人那裡獲得的最原始的信息有助於與其他評估者一起驗證我的評估

對於在這種情況下,我在美國工作,但我一直在尋求答案,但沒有給出法律建議,但這是公司通常/不常見或不建議/不建議的做法。

評論不作進一步討論;此對話已[移至聊天](http://chat.stackexchange.com/rooms/47404/discussion-on-question-by-alpha-interviewee-offered-code-samples-from-current-em)。
十三 答案:
enderland
2016-10-22 20:45:48 UTC
view on stackexchange narkive permalink

不,您不應該接受他們的邀請,並且您絕對應該將這個候選人轉給他人。這是非常不專業的,在美國被普遍認為是不道德的。

任何願意提供當前雇主的代碼而沒有適當解釋他們為什麼這樣做的人,顯然是對知識產權無視的人。他們給你的原因可笑。

你不希望那個人出現在你的公司中。為什麼您希望他們更好地對待您的 IP?不會導致您被解僱或陷入法律麻煩”的問題,因為這無關緊要,因為您不應該接受代碼示例,也不要雇用此候選人。如果候選人對為什麼可以看到該代碼有很好的解釋(例如,它是開源的,並且可以在GitHub上獲得),這也將非常

然後您不會問這個問題。您只需單擊他們的GitHub鏈接即可。

如果某人正在面試軟件開發職位,並且在志願參加以下活動時讓我100%明確提供專有代碼為什麼允許使用專有代碼,我不希望他們出現在我的團隊中。

如果僱用他們,為什麼我應該用我公司的代碼信任此候選人?

為什麼我什至應該信任候選人給他們寫的代碼(GitHub與專有技術的另一個優勢)?

如果我作為面試官必須詢問一位候選人告訴我,他們是否會為我“重新編寫”是否具有適當的IP和許可權限,以便與我共享這些信息,這證明他們對這的重要性沒有適當的專業了解。作為一名專業軟件開發人員,一定要了解並尊重這一點,尤其是考慮到復制整個代碼庫的難度。

我不希望那個人在我公司工作。

除非,當然,除非另一位雇主已開源該代碼或已經專門針對該項目制定了保密協議,並且明確允許該代碼共享
@atk可以肯定。但這將落入“正確解釋”的範圍內,這就是OP所說的:_“他們說很好,因為他們可以隨時再次編寫它”
如果問題不是專門詢問,“ *並且在美國將被廣泛認為是不道德的*”,您可以刪除“在美國”,因為這被廣泛認為是不道德的。
您知道候選人正在非法提供第三方IP。除非打算將其提供給執法部門,否則請將其丟棄。如果該公司發現您非法擁有自己的IP副本,則可能污染您自己的代碼庫,並且您的開發團隊將接受為期2週的審核過程,而非常昂貴的律師和P.Eng。則需要進行面試。您的員工(當一個懶惰的初級開發人員將Apple代碼複製粘貼到一個核心軟件堆棧中時,就會使一些公司退縮。)
也許是因為我曾經有過非常出色和耐心的經理,但是如果他是一名初級開發人員,我認為應該給他帶來懷疑的好處。當然,不要接受代碼,但也不要使情況成為破壞交易的因素。這是一個向候選人傳授為什麼他的建議是一個壞主意並了解他的反應的機會。然後,他的後續反應可以影響您的決定(而不是僱用他)。
不過,根據個人的經驗,您可能想給他們發送便條-例如,如果他們剛大學畢業(並且以前的雇主是他們實習或與之合作的人)不知道這是不道德的。
我對@enderland感到好奇,如果用戶願意向您展示其代碼的作用而不是代碼本身,您是否會改變看法?您確實提到“代碼的有效性”,但是我很好奇顯示功能是否也是一個問題?我還想問問他是否獲得許可,但這屬於你“適當解釋”的評論,imo。
@XaolingBao的問題是願意向我展示專有代碼,並附有有效的解釋:“我不在乎我公司的IP。”這可能是天真的錯誤,在這種情況下可以糾正,但是如果我面試全職職位,那不是我想冒的風險。
該答案假定不允許所討論的代碼共享。在許多情況下,公司可能允許離任的開發人員與感興趣的第三方共享一些代碼庫。如果是這樣的話,這個答案與正確完全相反。
在這種情況下,@coteyr不會告訴受訪者:“他們(候選人)說很好,因為他們可以隨時再寫一次”,而是說了您剛才說的話。
如果是初級開發人員,希望您能告訴他們不考慮他們的原因。由於無知,這可能是一個愚蠢的錯誤。
@enderland是否應根據OP的情況將此問題通知候選人的雇主?這是一個好主意還是會損害自己的聲譽?
您的雇主擁有多少樣板垃圾代碼具有革命性,甚至您會在乎這一程度?答案是麻煩。
@Gusdor問您當前的雇主及其法律部門,“嘿,我們的大多數代碼很無聊,而且並不是那麼獨特。我將其中的一些代碼複製並轉發給了在另一家公司工作的人,您在乎嗎?”
-1
他們聲稱可以“再次”編寫它,這有點可笑,這表明它很容易,但是並沒有這樣做。因此,即使它們是正確的,它仍然是一個危險信號。
@enderland,很大程度上取決於編程語言和上下文。公共網站上的HTML,CSS和JavaScript與在安全服務器上運行的用戶身份驗證服務完全不同。
@I'mnotpaidtothink您可能會對世界各地IP規範的變化感到驚訝。在韓國,對大學課程的期望通常是在課堂上插入一本教科書的副本,然後將其帶到校園外常見的書籍影印服務中,並為所有參加該課程的人製作一個副本。美國的觀點並非如此僅查看。
@Myles當然不是(而且我不是那個人)。但是韓國的例子有點不同。我懷疑韓國圖書的作者和出版商會普遍同意這種做法。這也是教育,不一定與工作場所相同。第三,這與庫的功能沒有太大不同。
DJClayworth
2016-10-22 21:34:27 UTC
view on stackexchange narkive permalink

向候選人詢問情況。

您實際上不知道候選人是否已被允許披露此代碼。不知不覺地將它們拒之門外。

如果有許可,請明確詢問。您大概會得到以下答案之一:

  1. 是的,我同意。有合理的理由。如果您相信他們的話,則取決於您。如果這對公司顯然不是很關鍵,並且他們告訴您他們已經獲得許可,那麼您就不會遇到麻煩。
  2. 我沒有考慮過許可。他們認為自己的所有工作都是機密的,僱用他們的任何雇主都希望對代碼進行保密,包括您在內。刪除您擁有的所有代碼副本。追求與否,取決於您是否認為他們已經吸取了教訓。
  3. 我不在乎機密性。立即拒絕。別忘了刪除該代碼。
  4. ol>

    您談到的一個回答是“ 很好,因為我可以隨時再次編寫它。”將會是“然後再寫一次,然後給我新版本。”

在美國,知識產權是“嚴肅的”行業,您甚至不想在這個級別上與應聘者打交道,這太冒險了,不僅對面試官而且對他們工作的公司來說都是如此。我曾經和麵試官處於類似的情況,據我所知,這是面試官唯一正確的反應,那就是立即斷然拒絕這樣的提議,並通知招聘經理髮生了什麼(招聘經理可以跟進)。法律部門(如果認為有必要)。
“ @njuffa”此代碼多年來一直是開源的,對不起,我想你會知道的。這是我未能正確傳達信息的錯誤。如果確實如此,那將是幸運的,但是我認為在溝通方面犯錯是完全公平的建議。
@djechlin我認為在45分鐘的採訪過程中無法確定某些法規的法律地位,僅相信受訪者的主張就太冒險了。根據您所從事的業務,如果它已獲得GPL之類的病毒許可,那麼即使研究一段開源代碼也可能會有風險。
@njuffa“它已獲得MIT許可證,該許可證發佈在其github上” sgtm
““然後再寫一次,給我新版本。”-全選,複製,粘貼,刪除一些評論,這樣做!您無法得知候選人實際上是“再次寫了”。甚至不知道應聘者是否為您提供了第一個版本-他/她當前雇主的任何人都可能寫過它。
這可能是公司不會考慮適當使用的非常通用的代碼。當我在SO上發布代碼時,他可能會說其中大多數已經在公共領域中。我有權在SO上發帖。
@Paparazzi如果一段代碼很簡單,那麼它*可能*不受版權或專利限制;而且,瑣碎的代碼對評估候選人也毫無用處。
@jpaugh我沒說很瑣碎,我沒有問題。
@njuffa只看GPL下的代碼會有多大的風險?
@MarcStober“風險”一詞可能太過強烈,“潛在問題”可能會更好。最好避免任何“潛意識複製”的可能性,以確保作品的“獨立創作”。
@Paparazzi我只表示,律師可以從另一家公司使用的任何一段代碼都是微不足道的。如果代碼在“開源”的意義上是通用的,那麼當然沒有問題。
@njuffa我也發現您的說法很神秘。您是說對於開發人員或招聘經理來說是有問題/風險的嗎?作為一名開發人員,我經常查看開源代碼,並且相當喜歡(至少個人而言)。如果您所在的行業具有如此嚴格的法律參數,我想我們永遠都找不到自己的同事。
@jpaugh您不知道律師只會微不足道。它可以是TF-IDF餘弦相似度的C#實現,其中該算法在公共領域中。
我現在知道你來自哪裡。如果算法是公共領域的,那又是另一回事了。但是在沒有開發人員的進一步信息的情況下,OP(以及OP的律師)必須假定代碼是專有的。在這種情況下,即使*可能*複製瑣碎的部分,也可能會引起訴訟。(例如:甲骨文在甲骨文與Google之間聲稱擁有API的權利對我來說是可笑的(因為API的全部目的是標準化不同用戶之間的交互),但到目前為止,法院已經認真對待了。)
@jpaugh我不是律師。我的外行人的理解是:(1)研究表明,潛意識複製通常是在人類中發生的(2)美國法院裁定,潛意識複製在版權案件中不是有效的抗辯,重要的是事實證明復制發生了(3)將病毒許可下的*任何*代碼轉換為代碼庫,會使整個代碼服從病毒許可的規定。因此:在處理封閉源代碼時,我從未讀過專利(“故意侵權”的風險),也從未讀過GPL相關的代碼(“潛意識複製”的風險)。您的看法可能有所不同
@njuffa現在我明白了。“病毒”是指自我複制,是指GPL禁止在另一種許可下重複使用的限制。我認為您的意思是完全使用任何開放源代碼,包括允許您在專有上下文中重用的MIT許可代碼,都是冒險的。
感謝您的回答。令我驚訝的是,這麼多人“假設”所討論的代碼是專有的,而我們只是被告知候選人是為他或她的當前雇主編寫的。就我們所知,這可能是該雇主的開源項目。
Chris Cirefice
2016-10-23 01:03:09 UTC
view on stackexchange narkive permalink

與訪問員共享代碼是對《軟件工程道德與專業實踐準則》的公然違反:

2.05 。將在他們的專業工作中獲得的任何機密信息保密,這些機密性符合公共利益且符合法律。

從您的問題來看,我猜測候選人沒有獲得共享代碼的權限。除非另有說明,否則守則歸雇主所有,並且屬於機密;因此,在這種情況下,這是不道德的行為,您絕對接受代碼。實際上,請立即解僱該候選人。

編輯:為明確起見,ACM的SE道德規範不是不是 法律 。這是關於我們行業的“做與不做”的一組簡單準則。但是,許多大學和雇主都採用該準則作為我們的道德準則標準集,以確保學生和員工了解該準則並遵循其實踐。例如。在計算機科學學位方面,我至少有4個涉及SE Code的重要項目。我所在地區的許多雇主也在面試中對應聘者進行道德問題測試,希望他們了解SE準則並在回答中運用該準則。


此外:

您提到要評估候選人的代碼編寫能力,評估其質量,清潔度等的能力,對嗎?好吧,讓他們執行一些簡單的編程任務,需要多考慮一些典型的FizzBu​​zz問題(這些問題旨在淘汰非程序員或能力不強的程序員)。

我個人希望有關用代碼描述現實世界系統的問題,不是一些複雜的算法“數學”問題,而是您要問的問題取決於您的行業。

感謝您的反饋。是的,我正在辯論自己的編程技能,但這可能是另一個問題。提出道德準則的好東西-我想我們大多數人都發現它與您的答案一起存在。
僅當它是機密信息(假設事實不在證據中)時,才屬於違規行為。
我想知道-現實世界中有百分之幾的程序員甚至知道ACM的這份冗長而冗長的文檔,更不用說感到需要了嗎?甚至是ACM本身。並不是說我不同意崇高的意圖。
@mickeyf許多大學(至少在美國)正在將“倫理”作為計算機科學學位課程的一部分。我認為,像其他許多行業一樣,為我們的行業製定一套道德準則是一個好主意。它有助於闡明我們對自己,雇主和公眾的責任。
@DavidConrad很好,考慮到這個問題甚至是首先提出來的,我認為可以公平地假設候選人沒有明確表示他們得到了雇主的許可,這意味著我們可以*假定*這是機密信息。
*《軟件工程職業道德與專業守則》 *-嗯,我從不訂閱此書...而且我懷疑其他人也沒有這樣做。在我看來,這是一個自我任命的權威。幾乎可以肯定,這違反了員工當前的合同-這是他們所遵守的唯一代碼。
@AntP當然您沒有訂閱。ACM不是“權威”,SE代碼也不是。請參閱我的答案編輯以進行澄清。
我要說的是@ChrisCirefice-引用毫無意義的道德規範,除非該道德規範已經被您所引用的各方確立並接受。
@AntP我不同意。我之所以發布此答案,是為了使人們更加*意識到*代碼的存在。而且,那些*了解*代碼的人可以引用該特定段落作為確定例如OP提出的問題的道德性的手段。您如何看待這些準則?通過傳播單詞並在實踐中使用它們來解決問題。那正是我在這裡所做的。
傳播這個詞並嘗試採用一個代碼是一回事(在軟件工程中,對於事實上的書面道德規範的需求不在本討論的範圍之內),但僅當該代碼作為問題的答案時才引用它已在被引用的組中建立了權威。您不能在規則達成一致之前調用規則-這毫無意義。
暫且不提代碼可能是適當的,但是除非已建立權限,否則將其視為答案的基礎就沒有任何意義。
讓我們[繼續聊天中的討論](http://chat.stackexchange.com/rooms/47399/discussion-between-chris-cirefice-and-ant-p)。但是我認為我們在這裡必須同意不同意,我們兩個人只能說的不多,而且我們都下了決心。讓投票決定!
@ChrisCirefice假設這絕對是不公平的,並且當OP可以簡單地詢問候選人時,OP沒有理由承擔任何責任。
Vietnhi Phuvan
2016-10-22 22:23:50 UTC
view on stackexchange narkive permalink

我將拒絕該候選人提供其雇主代碼的提議,並且我將進一步通知該候選人,不再考慮他在公司任職。

無論他提供其雇主提供的任何代碼以供檢查,請放心,在將來的某個時候,當他要尋找另一份工作時,他會為您做他對當前雇主所做的事情。

當然,如果您的候選人與他當前的雇主簽署了保密協議,那麼情況就變得更糟了,因為現在,他可能違反了該保密協議。再一次,請放心,如果他願意違反其當前雇主的保密協議,那麼當他在將來的某個時候與他的下一個潛在雇主進行面試時,沒有什麼能阻止他對您這樣做。

如果您需要評估應聘者的編程能力,請查看其Github,並/或為該應聘者提供您的設計實戰項目。然後讓考生與您一起檢查他們的代碼。

這似乎很嚴厲,但是我認為這是正確的答案。告訴他們為什麼有禮貌,希望他們將來能向他們學習,但是我確實認為這是一個嚴重的問題,我很難用我們自己的代碼庫來信任這樣的候選人。有一個明顯的“哦,但它是開源的”消息,這可能意味著我在與他們談論此事時不會一開始就全力以赴,但這是我所能做到的。
@Rob Moir-從表面上講,我不會接受有人所說的“ It's Open Source”。如果此候選人單方面宣佈為開源是您的代碼怎麼辦?如果它確實是開源的,那麼它應該在公共的Github存儲庫中,以供所有人(包括其當前雇主)查看。如果一名員工對開放源代碼許可證的了解為零,則將您的部分代碼聲明為開放源代碼-這是對代碼庫的生存威脅。例如,請參閱GPL v2的條款。根據GPL v2許可的條款,如果您在應用中包含任何GPL v2代碼,則您的應用為“開源”
相信我,Vietnhi,我同意您的關注,不會以他們的面子為準。在我將他們委託給垃圾堆之前,這只會為他們提供一個自我解釋的機會,但這需要成為一個很好的解釋,而不僅僅是快速講話。
令我驚訝的是,程序員與其他[受訪者在問的同時]說了這些話(https://www.theladders.com/career-advice/what-to-do-if-company-asks-for-facebook-password-in-job-interview /)“如果我正在訪問的公司[想要我的Facebook用戶名和密碼](https://www.linkedin.com/pulse/20140919143915-80607522-2-reasons-why-employers-want-your-facebook-password)我應該提供它們”。是的,在採訪中說您將不遵守保密協議是一個壞主意!如果候選人這樣做,則不應僱用他們。
@VietnhiPhuvan開源在創建Github之前就已經存在。
@David Conrad-那又如何?您沒有將我的代碼從私有存儲庫中移出並聲稱它是開放源代碼。如果您所謂的開源代碼沒有存儲在每個人都能看到的地方,請擰緊它-我不感興趣。我想看到雙手張開的雙手,最好保持乾淨。
@VietnhiPhuvan有很多地方可以存儲在“所有人都能看到的地方”,而不是Github。Github在開源開發方面沒有壟斷。
mhoran_psprep
2016-10-22 20:45:58 UTC
view on stackexchange narkive permalink

最簡單的思考方法是:稍微修改一下情況。想像一下,如果他們希望您在顯示代碼之前簽署保密協議。但是您從未期望過看看他們的代碼。你會簽字嗎?不。您希望公司律師首先查看NDA。 NDA不僅適用於您,還可以適用於您的整個公司。你不想要那個責任。

您不知道受訪者是否有權使用該代碼。您不知道它是否由另一家公司(他們的客戶之一)擁有,是否屬於公司機密甚至是政府所有。

我會禮貌地拒絕提供該代碼的提議。我還要確保我在他們提供的筆記中突出顯示了內容,然後我說不。

我將與我的經理和其他接受采訪的人討論這個問題。在我們對候選人的評估中,它甚至可能被視為負面評價。

建議(1)以書面形式記錄所發生的事情(2)立即通知招聘經理。(根據我的經驗)可能的結果是,招聘經理將取消其餘的預定面試並解僱候選人。
David W. Thrower
2016-10-23 02:47:00 UTC
view on stackexchange narkive permalink

每個人都在解決公司許可發布此信息的問題,但是我認為被忽略的問題的一個方面是:

數據是自然專有的嗎?

該代碼是否具有專有性?它是為解決普遍存在的問題而編寫的庫,還是在許多系統中充當通用齒輪的庫,而該庫沒有給該代碼的接受者帶來與該雇主競爭的真正優勢或獨特能力?例如,他提供的代碼是否包含一個數學函數庫,該函數可以使不包含內置三角函數的語言執行三角運算,而不執行其他操作?如果是這樣,我真的不認為這會如何損害用人單位的知識產權,實際上,我認為類似的事情應該在GitHub上公開發布。另一方面,如果此代碼是專有系統的關鍵部分,可以揭示任何內部工作流程,內部財務數據或公司應用程序功能的架構和機制,那麼這就是一個問題。再說一次,如果他只是透露一些解決編碼社區普遍存在的非專有問題的東西,那麼我傾向於說這沒有害處-沒有犯規。

在共享之前詢問還是很禮貌。

*可能*不會造成任何傷害(事實上,我懷疑即使是專有的也不會造成真正的傷害)。但是,在這種情況下,它表現出一種懶惰的態度。候選人*可以*考慮編寫一些專門共享的代碼,但願意採取一條可能會或可能不會涉及道德問題的簡單方法。有些人可能會稱其為實用主義,或者在這個答案的情況下不是“有禮貌”的,但是作為與任何從事知識產權工作的潛在僱員打交道的雇主,我認為關注的範圍已不止於此。
是!謝謝。很少的代碼實際上是專有信息。大多數情況下只是代碼。
如果代碼不屬於他,則其目的/用途無關緊要。他可能已經編寫了代碼,但這並不意味著他擁有它並可以自由共享。
我為工作編寫的所有代碼本質上都是專有的。
user42272
2016-10-23 00:42:43 UTC
view on stackexchange narkive permalink

情況非常糟糕,但是我同意最好不要在得出結論之前就得出結論(作為面試官,您可能只需要這樣做)。向您顯示代碼的屏幕截圖展示了與轉儲回購代碼不同的判斷力。對於候選人應採取的任何行動,我對道德的興趣不大,而對導致上述行動的判斷和思考過程則更感興趣,這在某些時候可以留出一些迴旋餘地。但這嗎?

他們說很好,因為他們總是可以再次寫它。

這真的發生了嗎?翻譯:“我擁有我所寫的所有內容,不用費心試圖說服我。我要么不了解基本的商業道德和法律,要么就不在乎。” -傳遞這個候選人。

感謝您用語言表達我的想法。是的,那是推卸責任。
感謝@Alpha。enderland的回答很全面,但我認為這條線跳出來的方式特別有說服力。
聽起來更像是“這是高度通用且非特定的代碼,與我當前的職位沒有內在聯繫,並且可能由我或任何其他人在任何時候以相同的形式編寫”我的論點
@LightnessRacesinOrbit是一個很好的例子,它與開發人員是否擁有他們所寫的內容無關。例如,您可能會使用該意見說服公司許可代碼,例如作為開源。
老實說,我對@Alpha的了解更多,這聽起來真像是無知。在我生命中的某個時刻,我了解到受訪者所做的事情是錯誤的。我絕對沒有在幼兒園或非商業,非工程專業的大學期間學習過它。如果受訪者的老闆不解釋這一點真的令人驚訝嗎?如果我*不遵守自己的道德規範,那意味著我對他們的了解足夠深,以至於知道這可能會使未來的雇主失望。不說“僱用”,只是想弄清楚該候選人的構成。
@djechlin:不能不同意
user59158
2016-10-23 14:48:05 UTC
view on stackexchange narkive permalink

沒關係,如果他只是根據自己的工作提出一個想法。那是在任何面試中代表自己的唯一方法。您可以解釋自己過去的經驗和解決方案。

我無法想像有人在任何面試中都與他保持完全一致的代碼。或者,如果他有或提供了很多電子郵件,那麼他編寫該代碼的保證是什麼。也許正是因為如此,他正在努力抓住機會。只需把他丟掉就可以了:D

CWilson
2016-10-25 19:04:06 UTC
view on stackexchange narkive permalink

不。

但是...

我們還不知道受訪者的經驗水平。

在很多領域,尤其是那些富有創造力的領域本質上,需要對以前的工作進行“投資組合”,並且不進行面試就足夠了。

簡歷/ CV /開發人員的故事很酷,但是講的內容不及在圖形設計演出中創建的確切徽標,您曾發表的短篇故事或一段視頻您介紹的講座。它甚至可以是您為上課或自己創建的代碼/軟件。然後在互聯網上搜索“採訪組合”時發現一些熱情的觀點,認為這樣的組合是個好主意。

說這是他們大學畢業後的第二份工作,他們是通過組合獲得第一份工作的,沒有軟件工程的受人尊敬的導師/教授/父母告訴他們,任何面試他們總是需要一份作品集。在沒有實際輸入和移交專有代碼的情況下提及它實際上可能是朝著正確方向邁出的一步,並表明他們普遍了解知識產權,但還不知道如何處理具體細節。

如果這個職位很初級,那不一定是問題,面試官實際上可以使用它來查看他們如何處理新信息(在他們不熟悉的領域,法律)與尊敬的權威相矛盾。但是,這需要經驗豐富且積極進取的面試官才能打磨鑽石。花時間在這裡提出關於特定案例的問題的訪問者可能就是那個訪問者。

另一方面,如果這是他們的第5個工作,在該領域工作了10年以上,並且擅長拋棄知識產權,我不確定您能否扭轉這一局面。

Michael Shaw
2016-10-23 15:08:08 UTC
view on stackexchange narkive permalink

否,您不應查看代碼示例。這對面試的決定並沒有真正的幫助,因為您不確定以下內容:

  1. 他寫了嗎?
  2. 花了多長時間?
  3. 他從互聯網上獲得了多少幫助?
  4. ol>

    這些問題都不能在訪談中得到明確回答。

    現在白板,並提出技術難題以代碼解決。這樣一來,您就可以了解他對代碼的看法,他知道該語言嗎?還是依靠智能?您可以添加約束條件並查看他的想法靈活。

    所有這些都可以幫助您確定此人在擔任您要填補的職位時需要多少支持。

我認為這是個不錯的建議,但並不能直接解決所提出的問題
我不同意。擁有代碼並對其進行解釋將使他能夠談論自己已經知道的設計決策,因此,如果我對此沒有很好的解釋,我知道我可以除掉他。一個新的問題可能具有挑戰性,模棱兩可,易於解決,或者不適合面試的時間(不應浪費受訪者的時間)。是的,我不知道確切的內容和編寫方式,但是有關的討論將告訴我。
Marc Stober
2016-10-23 19:49:22 UTC
view on stackexchange narkive permalink

出於更實際的原因,請說“不”:如果您有一個很好的評估候選人的系統,則不應使用一個候選人通常不會從其他候選人那裡看到的額外材料。

這表示我將與在這裡回答的其他一些人略有不同,因為如果這是最少的代碼,而不是專門針對先前的業務,那麼在整個計劃中並不是什麼大問題面試過程中進行的討論,這些討論必然會涉及候選人為前雇主所做的工作。依靠開源貢獻或讓候選人只為您編寫示例代碼有其自身的問題,因為這使他們從事無償工作,可能不是他們在工作中所做的工作的一個很好的例子。

coteyr
2016-10-24 04:46:02 UTC
view on stackexchange narkive permalink

首先,您必須回答另一個問題,然後才能回答“常見/不常見或建議/不建議”。

候選人是否有權分發代碼?

如果這樣做的話,這是普遍且可取的。開發人員將在何處擁有此權利的一些示例:

  • 開放源代碼項目
  • 與公司就開發人員自己編寫的現有IP達成的協議。
  • 與以前的雇主達成協議,在尋找新工作時使用部分代碼庫。

作為自由職業者,我從事“聘請工作”,這意味著我編寫的代碼是付款人的財產。也就是說,我通常會安排開源或保留部分工作的權利。一個很好的例子是我對活躍的商家進行的修改,以添加卡處理器。我與該公司進行了交談,並在他們的允許下開源了這些模塊,並將它們添加回Active Merchant。如果有人要求我提供代碼示例,則無需提供新權限就可以提供這項工作。

我還與客戶保持協議,以便能夠與有遠見的雇主討論並共享其部分代碼。

假設開發人員無權共享相關代碼是非常糟糕的。他們很可能擁有所需的所有權限。

如果他們沒有具有共享有問題的代碼的權限,那麼您只需傳遞候選人。通常,這是非法的(IANAL),並且在您沒有權限的情況下共享代碼當然是不專業的。

在此級別上建立共享代碼的權限很容易。只是問問。您不需要花哨的文書工作或冗長的法律工作。只是問候選人。您不會在項目/軟件中使用代碼,因此那裡沒有真正的風險。只要您不要求他們提供特定的代碼,他們(候選人)就可以共享,您可以不共享。 (請記住IANAL)

Kilisi
2016-10-23 06:08:08 UTC
view on stackexchange narkive permalink

我將不理會與此人之間的任何往來。他們的建議極不道德,甚至可能是非法的,我認為沒有必要與他們進行任何進一步的對話。他們的電子郵件地址將直接發送到我的垃圾郵件過濾器。

我不會理會它們或其他任何信息。我沒有生產性理由。我已經掌握了所有需要的信息。

如果訪問者有時間在SE上詢問特定訪問的特定情況,則他們可能有時間寫一封拒絕電子郵件。不是說每個人都需要,也不是說@Kilisi應該花時間。但是我會的。我對此表示反對。


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...