A. 程序員日均寫7行代碼試用期被開除,公司的行為是否屬於違法
作為職場人,我們一定要多給自己留一個心眼兒,也多給自己留一條後路,畢竟工作只是謀生的一個方式,快樂生活才是最重要的。
B. 程序員35歲就被公司勸退,該怎麼辦
記住,被裁員,絕對跟年齡無關,只會跟你的實力有關系。
只是隨著年齡的增大,一部分程序員就會被淘汰,從而引起淘汰率增加,讓人有35歲以上就很難混的錯覺。
35歲,上有老,下有小,想退休,嫌你小。
無論你是什麼人,等到35歲,都會進入一個「滯脹期」,出現瓶頸。要麼就是定位不清、要麼就是倚老賣老,狂妄自大。
所以,我給已經步入35歲的上班族一個建議。
加強與職場新人的溝通
倚老賣老真的是大忌,一定要多多和新人溝通,別把自己推向落伍的盲流。
減少工作待遇的期望值
年輕時,工資從5000漲到8000,又從8000漲到10000,噌噌噌的往上漲。但是,35歲是是很容易走下路的年齡,工資漲幅通常會變低,趨於穩定,所以思想要跟得上。
重新做好職業規劃,確定自己以後要干什麼,然後朝著這個目標繼續奮斗。
記住,不管是什麼時候,都要勇於奮斗,否則你要面臨的問題,可不是什麼被裁這么簡單了。
C. 程序員日均寫7行代碼被開除,公司隨後被判違法解除勞動合同,如何解讀
程序員日均寫7行代碼最後被公司開除,公司隨後被判違法解決勞動合同。在這個案件中可以發現相關的信息,這就是對職員的一種不公平待遇。程序員的工作是受到法律保護的,這種解決勞動合同的方法是違法的。
最後通過法院的裁定,公司是認為證明陳淑媛在試用期這段時間並不符合錄用的條件,只是單方的與其解除了勞動合同,但並沒有事實依據,也沒有法律依據,這種合同屬於違法解除勞動的合同。最終根據法院的判決,公司需要支付作為程序員的勞動,賠償金有36000元,並且要支付,證明程序員在2021年1月份到12月份期間的工資達到13241.37元,法律維護了證明程序員的合法權益。
D. 我一個程序員被公司間接辭退,我該怎麼做
如果用人單位口頭說要辭退你,你在沒有接到正式書面通知(蓋有公章)前,按時上班,或要求用人單位給你一個書面通知。如果僅憑用人單位口頭說你明天不用來上班了,你就不來的話,到時用人單位會說是沒有人說過不讓你上班,是你自己曠工數日,按你自動離職處理了。
沒找到新工作前,繼續上班,公司還得給你發工資。公司就是想讓你自己離開,不用支付經濟補償金。
E. 程序員被開除了會怎麼樣
名程序員抱怨的點就是自己已經被開除,工作也做了正常的交接,但是現在卻以命令... 網友們看到後紛紛留言支招,其中有的網友說既然都被開除了,就沒關系了,也就沒必...
F. 程序員三十五歲之後被公司辭退,以後能幹什麼
對程序員來說,年齡是一個很大的門檻,年輕的程序員身體條件好,可以經常加班。就工資而言,年輕程序員的工資一般很少,公司支付較低的費用就可以僱用他們。年齡大的程序員工作年齡長,所以公司要支付的工資高,喜歡下班,公司老闆就很不喜歡他們。所以對程序員來說,35歲是分割線。很多程序員到了35歲就會面臨被裁掉的危險。
所以如果裁員,正好有時間考慮自己該做什麼。如果再去人才市場面試,那也太沒有競爭力了,可以和年輕人比,最好問問改變了的朋友。最好看看他們對新興行業是否有好的看法,如果有,能不能和他們一起創業。當然,原來業界也可以根據自己的優勢找到賺錢的地方。大家都可以試試
G. 我是剛剛畢業的程序員,工作了大概實習期加試用期有6個月,關於試用期被辭退的問題
1、如果勞動者簽了個人辭職書:就是勞動者有試用期內主動解除合同了:這樣的情況,公司只需給勞動者實際工作時間的工資、卻不必給勞動者經濟補償。
2、如果勞動者不簽:公司在試用期內解除合同,就必須拿出證據證明勞動者「不符合錄用條件」。
(1)如果公司有這樣的證據:公司是依法解除與你的勞動合同,要給勞動者實際工作時間的工資、卻不必給勞動者經濟補償;
(2)如果公司拿不出證據證明勞動者「不符合錄用條件」:就是公司違法解除合同,此時,如果勞動者要求繼續履行合同,公司應當履行;如果勞動者不要求繼續履行合同:公司應給勞動者經濟補償金的2倍作為賠償,即:在勞動者工作不滿3個月時,除給勞動者應得的實際工資外,還應給勞動者一個月的賠償金。
法律依據是:
(1)《勞動合同法》第46條:「有下列情形之一的,用人單位應當向勞動者支付經濟補償:
(一)勞動者依照本法第38條規定解除勞動合同的;
(二)單位依照本法第36條規定向勞動者提出解除勞動合同並與勞動者協商一致解除勞動合同的;
(三)用人單位依照本法第四十條規定解除勞動合同的;
(四)用人單位依照本法第四十一條第一款規定解除勞動合同的;
(五)除用人單位維持或者提高勞動合同約定條件續訂勞動合同,勞動者不同意續訂的情形外,依照本法第四十四條第一項規定終止固定期限勞動合同的;
(六)依照本法第四十四條第四項、第五項規定終止勞動合同的;
(七)法律、行政法規規定的其他情形。
第37條:「勞動者提前三十日以書面形式通知用人單位,可以解除勞動合同。勞動者在試用期內提前三日通知用人單位,可以解除勞動合同。」
第39條:「勞動者有下列情形之一的,用人單位可以解除勞動合同:
(一)在試用期間被證明不符合錄用條件的」。
【由上可知:勞動者依據第37條自己主動在試用期內辭職:沒有經濟補償金;單位依據第39條在試用期內解除合同:沒有補償金】。
第48條:「【用人單位違反本法規定解除或者終止勞動合同】,勞動者要求繼續履行勞動合同的,用人單位應當繼續履行;勞動者不要求繼續履行勞動合同或者勞動合同已經不能繼續履行的,用人單位應當依照本法第八十七條規定支付賠償金。」
第87條:「用人單位違反本法規定解除或者終止勞動合同的,應當依照本法第四十七條規定的經濟補償標準的二倍向勞動者支付賠償金」
第47條:「經濟補償按勞動者在本單位工作的年限,每滿一年支付一個月工資的標准向勞動者支付。六個月以上不滿一年的,按一年計算;不滿六個月的,向勞動者支付半個月工資的經濟補償。 」
所謂「不符合錄用條件」沒有具體規定,我的理解主要是:
1、不符合公司招聘時對相應職位的要求
2、缺乏實際工作能力,經培訓、調換崗位仍不能勝任的等等。
H. 程序員日均寫7行代碼試用期被開除,公司的這一行為合法嗎
程序員日均寫7行代碼試用期被開除,公司的行為已經涉嫌違法犯罪。要知道公司認為員工的工作量不飽和,可是公司安排的工作強度已經超出了預想。員工沒有將工作按時的完成,並不是自己一個原因,是因為公司的做法極其的不合理。據法律法規得知公司在開除員工的時候,不能因為個人出現的問題,並將所有的罪責都掛在自己的頭上。公司要根據實際的情況給員工一定的賠償,否則的話兩個人可能要法庭上相見。
總的來說作為一個職場人,平時一定要給自己多留一個心眼,要學會給己留有一席之地。工作只是謀生的一個方式,快快樂樂的生活才是一個最好的選擇。每個人都要以此事為例,要逐漸的適應工作當中的科學難度。不要在這上面能做一個傻白甜,那最終傷害的人便是自己。因為余情於理對方都應該對其相應的勞務進行支付,所以不要讓對方試圖凌駕於法律之上。
I. 41歲程序員被辭退,家人引薦到居委會工作,收入以為看錯了,怎麼回事
41歲程序員最終被單位辭退之後,家人引薦到居委會工作。這一名程序員看到收入的時候,他還以為看錯了主要是因為他看到居委會的工作收入太低了。因為居委會的工作收入,一個月僅僅只有5000元,跟他之前在IT行業工作的工資,存在著天壤之別。
這名男子一開始看到居委會工資的時候,之所以會以為看錯了,主要是因為居委會的工資太低了。因為男子一直以來都是在IT行業工作的,而且他的工資都是以萬為單位的,他沒想到自己在40多歲的時候領到的工資才5000多。所以,當這名男子看到居委會工資的時候,露出了驚訝的表情,甚至一度以為自己看錯了。
總而言之,這程序員之所以會淪落到要去居委會工作主要是因為證明程序員的年紀太大了,導致他沒有辦法找到程序員方面的工作。而當他看到居委會工資的時候,以為看錯了是因為居委會工作的工資僅僅只有5000,他覺得太低了。
J. 程序員新人周一優化一行代碼,周三被勸退
這周一,公司新來了一個同事,面試的時候表現得非常不錯,各種問題對答如流,老闆和我都倍感欣慰。
這么優秀的人,絕不能讓他浪費一分一秒,於是很快,我就發他了需求文檔、源碼,讓他先在本地熟悉一下業務和開發流程。
結果沒想到,周三大家一塊 review 代碼的時候就發現了問題,新來的同事直接把原來 @Transactional 優化成了這個鬼樣子:
就因為這一行代碼,老闆(當年也是一線互聯網大廠的好手)當場就發飆了,馬上就要勸退這位新同事,我就趕緊打圓場,畢竟自己面試的人,不看僧面看佛面,是吧?於是老闆答應我說再試用一個月看看。
會議結束後,我就趕緊讓新同事復習了一遍事務,以下是他自己做的總結,還是非常詳細的,分享出來給大家一點點參考和啟發。相信大家看完後就明白為什麼不能這樣優化 @Transactional 註解了,純屬畫蛇添足和亂用。
事務在邏輯上是一組操作, 要麼執行,要不都不執行 。主要是針對資料庫而言的,比如說 MySQL。
只要記住這一點,理解事務就很容易了。在 java 中,我們通常要在業務裡面處理多個事件,比如說編程喵有一個保存文章的方法,它除了要保存文章本身之外,還要保存文章對應的標簽,標簽和文章不在同一個表裡,但會通過在文章表裡(posts)保存標簽主鍵(tag_id)來關聯標簽表(tags):
那麼此時就需要開啟事務,保證文章表和標簽表中的數據保持同步,要麼都執行,要麼都不執行。
否則就有可能造成,文章保存成功了,但標簽保存失敗了,或者文章保存失敗了,標簽保存成功了——這些場景都不符合我們的預期。
為了保證事務是正確可靠的,在資料庫進行寫入或者更新操作時,就必須得表現出 ACID 的 4 個重要特性:
其中,事務隔離又分為 4 種不同的級別,包括:
需要格外注意的是: 事務能否生效,取決於資料庫引擎是否支持事務,MySQL 的 InnoDB 引擎是支持事務的,但 MyISAM 就不支持 。
1)編程式事務
編程式事務是指將事務管理代碼嵌入嵌入到業務代碼中,來控制事務的提交和回滾。
你比如說,使用 TransactionTemplate 來管理事務:
再比如說,使用 TransactionManager 來管理事務:
就編程式事務管理而言,Spring 更推薦使用 TransactionTemplate。
在編程式事務中,必須在每個業務操作中包含額外的事務管理代碼,就導致代碼看起來非常的臃腫,但對理解 Spring 的事務管理模型非常有幫助。
當然了,要想實現事務管理和業務代碼的抽離,就必須得用到 Spring 當中最關鍵最核心的技術之一,AOP,其本質是對方法前後進行攔截,然後在目標方法開始之前創建或者加入一個事務,執行完目標方法之後根據執行的情況提交或者回滾。
Spring 將事務管理的核心抽象為一個事務管理器(TransactionManager),它的源碼只有一個簡單的介面定義,屬於一個標記介面:
通過 PlatformTransactionManager 這個介面,Spring 為各個平台如 JDBC(DataSourceTransactionManager)、Hibernate(HibernateTransactionManager)、JPA(JpaTransactionManager)等都提供了對應的事務管理器,但是具體的實現就是各個平台自己的事情了。
參數 TransactionDefinition 和 @Transactional 註解是對應的,比如說 @Transactional 註解中定義的事務傳播行為、隔離級別、事務超時時間、事務是否只讀等屬性,在 TransactionDefinition 都可以找得到。
返回類型 TransactionStatus 主要用來存儲當前事務的一些狀態和數據,比如說事務資源(connection)、回滾狀態等。
TransactionDefinition.java:
Transactional.java
說到這,我們來詳細地說明一下 Spring 事務的傳播行為、事務的隔離級別、事務的超時時間、事務的只讀屬性,以及事務的回滾規則。
當事務方法被另外一個事務方法調用時,必須指定事務應該如何傳播 ,例如,方法可能繼續在當前事務中執行,也可以開啟一個新的事務,在自己的事務中執行。
TransactionDefinition 一共定義了 7 種事務傳播行為:
01、 PROPAGATION_REQUIRED
這也是 @Transactional 默認的事務傳播行為,指的是如果當前存在事務,則加入該事務;如果當前沒有事務,則創建一個新的事務。更確切地意思是:
這個傳播行為也最好理解,aMethod 調用了 bMethod,只要其中一個方法回滾,整個事務均回滾。
02、 PROPAGATION_REQUIRES_NEW
創建一個新的事務,如果當前存在事務,則把當前事務掛起。也就是說不管外部方法是否開啟事務,Propagation.REQUIRES_NEW 修飾的內部方法都會開啟自己的事務,且開啟的事務與外部的事務相互獨立,互不幹擾。
如果 aMethod()發生異常回滾,bMethod()不會跟著回滾,因為 bMethod()開啟了獨立的事務。但是,如果 bMethod()拋出了未被捕獲的異常並且這個異常滿足事務回滾規則的話,aMethod()同樣也會回滾。
03、 PROPAGATION_NESTED
如果當前存在事務,就在當前事務內執行;否則,就執行與 PROPAGATION_REQUIRED 類似的操作。
04、 PROPAGATION_MANDATORY
如果當前存在事務,則加入該事務;如果當前沒有事務,則拋出異常。
05、 PROPAGATION_SUPPORTS
如果當前存在事務,則加入該事務;如果當前沒有事務,則以非事務的方式繼續運行。
06、 PROPAGATION_NOT_SUPPORTED
以非事務方式運行,如果當前存在事務,則把當前事務掛起。
07、 PROPAGATION_NEVER
以非事務方式運行,如果當前存在事務,則拋出異常。
3、4、5、6、7 這 5 種事務傳播方式不常用,了解即可。
前面我們已經了解了資料庫的事務隔離級別,再來理解 Spring 的事務隔離級別就容易多了。
TransactionDefinition 中一共定義了 5 種事務隔離級別:
通常情況下,我們採用默認的隔離級別 ISOLATION_DEFAULT 就可以了,也就是交給資料庫來決定,可以通過 SELECT @@transaction_isolation; 命令來查看 MySql 的默認隔離級別,結果為 REPEATABLE-READ,也就是可重復讀。
事務超時,也就是指一個事務所允許執行的最長時間,如果在超時時間內還沒有完成的話,就自動回滾。
假如事務的執行時間格外的長,由於事務涉及到對資料庫的鎖定,就會導致長時間運行的事務佔用資料庫資源。
如果一個事務只是對資料庫執行讀操作,那麼該資料庫就可以利用事務的只讀屬性,採取優化措施,適用於多條資料庫查詢操作中。
這是因為 MySql(innodb)默認對每一個連接都啟用了 autocommit 模式,在該模式下,每一個發送到 MySql 伺服器的 SQL 語句都會在一個單獨的事務中進行處理,執行結束後會自動提交事務。
那如果我們給方法加上了 @Transactional 註解,那這個方法中所有的 SQL 都會放在一個事務里。否則,每條 SQL 都會單獨開啟一個事務,中間被其他事務修改了數據,都會實時讀取到。
有些情況下,當一次執行多條查詢語句時,需要保證數據一致性時,就需要啟用事務支持。否則上一條 SQL 查詢後,被其他用戶改變了數據,那麼下一個 SQL 查詢可能就會出現不一致的狀態。
默認情況下,事務只在出現運行時異常(Runtime Exception)時回滾,以及 Error,出現檢查異常(checked exception,需要主動捕獲處理或者向上拋出)時不回滾。
如果你想要回滾特定的異常類型的話,可以這樣設置:
以前,我們需要通過 XML 配置 Spring 來託管事務,有了 Spring Boot 之後,一切就變得更加簡單了,只需要在業務層添加事務註解( @Transactional )就可以快速開啟事務。
也就是說,我們只需要把焦點放在 @Transactional 註解上就可以了。
雖然 @Transactional 註解源碼中定義了很多屬性,但大多數時候,我都是採用默認配置,當然了,如果需要自定義的話,前面也都說明過了。
1)要在 public 方法上使用,在類的computeTransactionAttribute方法中有個判斷,如果目標方法不是public,則TransactionAttribute返回null,即不支持事務。
2)避免同一個類中調用 @Transactional 註解的方法,這樣會導致事務失效。
在測試之前,我們先把 Spring Boot 默認的日誌級別 info 調整為 debug,在 application.yml 文件中 修改:
然後,來看修改之前查到的數據:
開搞。在控制器中添加一個 update 介面,准備修改數據,打算把沉默王二的狗腿子修改為沉默王二的狗腿:
在 Service 中為方法加上 @Transactional 註解並拋出運行時異常:
按照我們的預期,當執行 save 保存數據後,因為出現了異常,所以事務要回滾。所以數據不會被修改。
在瀏覽器中輸入 http://localhost:8080/user/update 進行測試,注意查看日誌,可以確認事務起效了。
當我們把事務去掉,同樣拋出異常:
再次執行,發現雖然程序報錯了,但數據卻被更新了。
這也間接地證明,我們的 @Transactional 事務起效了。
看到這,是不是就明白為什麼新同事的優化純屬畫蛇添足/卵用了吧?