在拉脱维亚的埃森哲公司担任软件工程师值得工作吗?

您已收到净薪€1,800的起薪。 这意味着,除此以外,还可能会有绩效奖金,年薪增长2-3%,以及晋升的前景。 这样的钱足以在里加舒适地生活-一点也不奢侈,但您的生活质量将高于平均水平。 在一个不错的现代社区中的两居室公寓,每月约需花费600-650欧元; 加上150欧元的公用事业费用(水,暖气,建筑维护,互联网)。 想像一下这样的景象,供您早晨散步: 您至少还有1,000欧元可用于饮食和生活方式。 足够租一辆普通的新车,在一家好的食品店购物,照顾好自己(健身房,理发师,按摩师等),每个月出一两次。 您的雇主可能会为您提供健康保险,因此您无需担心该费用。 您还可以在城镇中心以外的地方租一个更适中的地方: 这样一来,您每月的房租和水电费总额将减少至500欧元左右,甚至比选择较小的公寓还要少。 您需要花更多的时间四处走动,附近的环境不会那么好–不危险,而只是灰色而沉闷。 因此,您需要自己决定生活质量是否足以满足您的需求。 里加(Riga)通常是一个运作良好,安全宜人的小镇,与欧洲其他地区的交通十分便利,在这么小的地方也要进行很多工作。 哦,是的,有些本地公司可能会为与IT相关的特定职位支付更高的价格,但是他们可能不太愿意赞助非欧盟国家的员工。 因此,我不确定这是否是您的有效参考点。

作为软件工程师,如果我不了解高级算法和数据结构,我还不够好吗?

这取决于您要在哪里工作以及要解决什么问题。 如果我不得不谈论印度的情况,我已经看到许多加入MNC公司作为测试人员并成长为董事级别而无需编写任何代码的人!忘记了高级数据结构和算法。 在印度的IT公司和跨国公司的印度对口公司完成的大部分工作都不涉及核心技术和产品。 这里的人们主要从事零碎工作,修复问题,维护项目,移植代码等。这些类型的工作不需要任何高级编程概念。 公司更喜欢新鲜的,经验不足的人来做这些工作,而经验丰富的人则应该做人事管理。 因此,您在印度看不到许多高级程序员。 我曾在一家美国跨国公司的公司工作,在那里他们建立了一个团队进行视频分析,并招募了知名人士。 他们花了2到3年的时间来创建产品,但该产品不符合市场标准。 然后,他们废弃了该团队,并收购了一家开发了世界一流品质产品的小公司。 许多跨国公司通常不会在开发新技术和解决方案上投入大量资金,而是会收购已经拥有这些解决方案的小型公司。 印度的劳动力不足以从事先进技术的工作。 因此,如果您从工作的角度来看,即使不学习高级知识,您仍然可以在一定程度上生存。 如果您热衷于学习先进技术并希望解决关键问题,那将是最受欢迎的,因为没有多少人希望自己动手!

软件工程师的生活和薪水与投资银行家相比如何?

相关性很小。 首先,软件工程的路径只​​能从本科学位开始。 另一方面,投资银行家甚至很难进入入门级职位。 投资银行家凭借其所遵循的学习曲线,人际交往能力,言语敏捷性和内在智慧,具有承担职责的独特资格。 人们不只是简单地以投资银行家的身份申请一份“工作”。 胜任之路漫长而艰巨。 它以一所著名大学,一等或二等学校的本科学位(最低GPA为3.5)开始。 下一步是花2年的时间,也许是3或4年,担任财务分析师,最好在一家公认的金融机构或像彭博社这样的公司工作。 学习在GRE上得分非常好是必不可少的。 如果他们克服了这一障碍,并且在GRE的两个部分都取得了高分,那么他们将面临艰巨的任务,那就是在1B级学校中获得梦co以求的成绩……哈佛,达特茅斯,耶鲁大学,哥伦比亚大学,麻省理工学院,斯坦福大学,伯克利(Berkeley)等。入学竞争非常激烈。 假设他们正在按照上面的概述进行申请并取得了进展。 申请一所B学校并不能最大程度地提高入学率,因此谨慎选择几所学校。 成功的校友的三封推荐信是一个重要的优势,当然,一个引人入胜且有说服力的个人陈述可以说出他们所申请的每一所大学所要求的内容,而这并不是像电子邮件那样容易完成的任务。 好的,现在,他们被接受了。 他们将有来自世界各大洲的同班同学,同龄人,并且有一个共同点:他们每个人都是“最聪明的人”。 现在,他们的任务是在两年制课程的第一年年底之前在全班的前10%中取得得分。 如果这样做的话,“品牌”投资银行和世界一流的战略咨询公司都将招募他们。 John或Mary第一天报告在一家IB公司工作,花了两年时间处理他们在并购或交易流程中分配给副总裁的数字,如果他们非常幸运的话,他们每天只有12个小时以上,周六和周日+小时。…

作为软件工程师,您最使用哪种编程语言?

开玩笑的答案是我使用的是我从事的项目所使用的语言。这是有一定道理的,因为实际上很少有您有完全,完全自由地选择项目的语言。工作。 您可能已对该决策进行了输入。 实际上,我认为这是我的管理层和客户信任我的好兆头。 但是,您可能在项目进行之后到达,或者您可能是试图就使用哪种语言达成共识的几个开发人员之一。 我工作的很大一部分是嵌入式的,因此我通常会使用C或C ++。 鉴于我多年的经验,无论如何我还是会选择它们作为嵌入式工作的。 我已经写了一些Android应用程序。 尽管有使用C#和其他语言的工具,但Java很好地支持本机Android开发。 再次,有一个不错的选择。 由于这些应用程序不会跨平台,因此我没有尝试使用Xamarin之类的东西。 对于桌面GUI,近年来,我使用了C#,Java和Python。 C#实际上比许多人意识到的更可移植,但是Mono项目比几个版本落后于.NET,因此您不能立即使用最热门的新功能。 Java的可移植性是早期(“一次编写,到处移植”)的笑话首当其冲,但是多年来,它的可移植性非常出色。 Python的可读性非常好。 当为网络开发时,几乎可以肯定会在客户端使用Javascript。 在后端,选择您的团队知道的语言,并将其与您所使用的工具最完美地集成在一起。