未来架构师征文(推荐10篇)由网友“流泪猫猫”投稿提供,下面小编为大家整理后的未来架构师征文,希望能帮助大家!
篇1:架构师心得
去年八月底的一天,有同事在撺掇大家考系统架构师,也过来问我要不要考试。我到他们那拿了参考书翻了翻,觉得这些选择题倒也不是很难,复习复习应该也可以考过,问了一下考试时间,是11月9号。这么算下来也有两个月多一点时间,算起来也还可以。再一问报名费,才200元不到。于是毫不犹豫就报名了。
结果报完名以后才知道这考试居然还分上下午卷,下午卷不但有主观问答题,还有考论文的。顿时觉得有点头大,但是想想写文章我也不差,写个论文可能也能应付得来吧。最关键是考试费超低啊,这年头200块钱能干啥?
报完名后两三天内就付款,同时买了推荐的书籍。说实话,我以前的做事风格是没有这么利索的,属于中度拖延症的范畴。但是最近这一两年,痛定思痛以后有了不少改观,这件事情也是侧面印证了我的改变。
拿到书以后,仔细翻了翻,虽然考的东西都不是很深入,但是考的面真是很广。这大概是“一英里宽,一英尺深”的理念的体现。不过我觉得这样的设置也算合理,毕竟这是架构师考试,作为架构师,应该对系统的方方面面都有所了解。因为在我看来,架构师的重要职责是做好选择题,做好选择题的前提是你有广阔的知识面。上午的题都是选择题,应该问题不大。麻烦的地方在于下午的论述题和论文。尤其是论述题,感觉完全没有思路。不是因为对相关的知识完全不了解,而是对答题的思路和角度完全不适应。比如对于ORM和Web2.0这些我自认为挺了解的问题,我试着回答了一下居然和答案相差十万八千里。
不过既然报了名了,而且既然下了决心要考了,那就好好准备吧。我不想这么轻易就放弃。其实这一点,也是我正在改变的一点。像拖延一样,做事决心和恒心不够强也是我之前的缺点,这两年也是慢慢在改。改变的结果也是在这次考试中得到了印证,很开心。因为从复习的条件来讲,我其实也是很差的。家里有小孩,在九月中旬之前还好,有岳母帮忙带。九月中旬之后老人家回去了,家里只有我们两个,白天上班,晚上带小孩。老婆的公司最近也忙了,时不时还要加个班。学上加霜的是,不知道怎么回事,三十多年从没过敏问题的我,居然得了过敏性荨麻疹。每天晚上发作起来的时候身上皮肤一大片一大片地起红肿斑块,痒得根本看不了书。去医院开了抗过敏药,这种药的副作用是嗜睡,也没法复习。后来把吃药的时间放在白天,同时也有些适应这个药了,才慢慢好些了。
时间一点点过去,心理的踏实感始终不是很强。尤其是论述题,即使到考试前,我觉得上午卷和论文应该问题都不大了,但是论述题还是没把握。
考试那天,也算是运气好。下午的论述题出得还比较简单,论文题目也有一题相对简单的。考完后感觉还行。但是由于大头都是主观性的题目,所以对于通过考试没有十分的把握。这考试出成绩还特别慢,一开始还在想啥时候可以查成绩,后来时间久了也不太想了。
结果今天在微信群里面老大说成绩可以查了,而他挂了。我们老大也是技术上比较牛的人,我想他都挂了,我估计也悬,于是不由得紧张起来。怀着忐忑的心去查了一下,发现成绩是48/47/48.隐约中记得45分就是通过的,这么讲难道是过了。于是开始怀疑分数线是不是45分了,到网上一搜,也有好多人有同样的心理,不过分数线应该是不会乱变的。这个时候才感觉到一阵阵兴奋袭来。感觉两个月辛苦的准备终于有了回报。我看到网上有人考试轻轻松松过的,我自认为没有这么牛,我还是花了不少时间准备的,当然我的底子也是不错的。所以,我感受到的开心也是胜于他们的,这也公平吧。
和我同参加考试的一些人都没通过,有一个很可惜,几乎每门都只差几分。大概是运气差点吧。运气也是很重要的。不过怎么样,这次考试通过了,我实现了当时的目标。今年可以考个别的新的考试了。
篇2:架构师心得
上周五到周日,由InfoQ中文站主办的全球架构师峰会在深圳万科国际会议中心隆重召开,我也从大连跑到深圳去领略了一次会议的盛况。
这次会议最有意思的莫过于参会的人员了,因为大多数都是公司中的中高级技术人员,所以女士非常稀少,差不多八九百的参会人员里面,女士的人数应该不超过30人吧(指会场中的参会人员),这就直接导致各位男士们的穿着比较随意,大T恤、大短裤、拖鞋的打扮随处可见,大家都以自己为“IT民工”而感到自豪,。
会议中的演讲还是非常有料的,我也收获不少。比方说土豆网的吴岷讲述的CDN相关技术,切合实际,而且都是在实践过程中摸索出来的经验,听起来非常过瘾。搜狗的茹立云讲述的深层网络搜索,让我了解到原来搜索方面还有这么多深层次的内容,还可以有很多的进展。乌云的剑心讲述的安全方面的知识也让我受益匪浅,里面的一句话“不以数据为中心的安全都是不负责任的”,非常实在,我们不应该单纯地为了安全而安全,安全的目的是为了能够保护重要、敏感的数据,否则就没有意义。还有几位外籍讲师的内容也非常版,像Simon Brown讲得两个主题,分别叙述了敏捷与架构之间的关系,以及架构中所需要注意的安全性概念,深入浅出,实用性也比较强。还有广宇同学讲的HTML在东软UniSDP中的应用,也让很多人眼前一亮。
演讲非常精彩,更重要的是在会议的过程中又认识了不少新朋友,相谈甚欢。像神交已久但素未谋面的安全专家殷钧钧,淘宝技术大学的校长子柳,还有虎扑网的技术经理洪涛等等,每位朋友的思想都非常活跃,与他们的交流非常开心。
篇3:架构师心得
从毕业开始到现在技术已经做了4年了。4年时间,从一个创业MIS型公司的小小程序员混到了现在的互联网企业的技术型PM(其实个人觉得自己应该被称为高级工程师,或者厚着脸皮的话称为“架构师”也行)。中间的道路虽然也是磕磕绊绊,当庆幸的是还总算是爬过来了。
其实要说有什么大的经验也算不上,只能说跌爬滚打了4年时间,再怎么不长记性,忘乎所以,长了伤疤忘了疼,但是疤痕总归要留下一点?!只能说把这些曾经的伤疤拿出来和大家分享一下,怎么样让以后的同志们尽量少去碰石头或者投海。以前有人撞过了,投过了,以后能绕道就绕道吧!
其实做技术呢,不能光去从技术角度看到技术,他牵涉到方方面面(这个不是说大话,我不是“叫兽(教授)”,更不是“装假(专家)”,没必要托大)。如果你光从技术角度去提升你的技术,你将会很快就碰到瓶颈,并且碰到瓶颈后没有什么好的办法去克服。那么我们在提升自己的技术之前要做些什么?怎么提升自己的自身的技术呢?
第一:你先要认识你自己。作为程序员,其实我们90%或者更多都是很自负的。不要不承认,我也是程序员。我深深的了解自己所属的人群。你是不是经常有下面的现象发生:你看别人的代码都是垃圾,看自己的代码都很完美?你是不是觉得别人写的代码或者做的解决方案都不是最优的,只有你自己的代码或者解决方案是最优的?你是不是会觉得你的代码肯定没有bug,别人的代码肯定存在bug?……。太多了。如果这些现象在你身上发生,那么第一件事情就是:请你把它改掉吧?!程序员应该是谦虚的,上进的,否则在这个技术更新比换gf都快的时代,你不太能跟上步伐。
第二:你是不是经常和人家争执?你是不是每个问题都争执?你是不是听不见去别人的任何意见?……。这点也请你改掉它。作为技术人员这个是特有的,我以前也是为了一个问题会和别人争得面红耳赤,情绪激动。最后往往是不欢而散。想想到头来对你有什么好处呢?技术和学术还是有区别的,技术不需要争论,技术需要的是真实,现实。当你们存在争论的时候最好的方式是去做一个demo,又能锻炼自己,又能说明问题。一箭双雕,何乐而不为呢?
第三:不要有信仰之争。现在很多程序员,包括经常听到已经工作了十几年的技术人员往往也在说java比net好,或者是net比java好;window比linux好,linux比window好。这些派别,门户,俨然已经成为了一种信仰。但是不应该有对立啊!大家都是经过高中教育的,都是学过唯物辩证法的。一个东西肯定存在好的一面也肯定存在不好的一面。何况是两个东西比较呢?每个人的信仰可以不一样,但是信仰是用来去尊重的。不是用来争的。你可以有你的信仰,但是你也不能去污蔑别人的信仰啊?!Anders Hejlsberg和James Gosling尚且可以心平气和的坐下来谈谈,我们为什么就不能呢?再说了,我们又不是非得要靠net或者java吃饭的。我们就不能把net的优点和java的优点都拿过来用吗?
第四:别眼高手低。不管是应届毕业生或者是老手,千万要记住一条。你就算再有水平,也要在别人见到你的水平后再去要求别人。不要上去给你做什么都感觉简单,都觉得大材小用,都觉得浪费你的聪明才智。然后往往紧跟出现的就是工作一团糟。美其名曰:这种东西老子不屑做。咳……。这个怎么说呢?你都觉得简单了,为什么不把它做做好呢?碰到这种问题,我只能说你最好还是换位思考一下吧?!
第五:请关心开源社区。开源社区的优点就不多说了。如果你是一位net开发人员,我衷心的劝你一句:请关心一下开源社区吧!我也是net程序员,我也深深的了解net程序员的优缺点。但是请你们不要排斥开源,也不要一味的使用MS的产品。有的时候开源的东东能给你另外的一种解决方案,能让你看到另外的一片天地。你也不要觉得开源非常的高深,如果有机会,你也尽可能的加入其中。不为别的,如果你加入了开源组织,再提交了代码的话,你的简历是不是就加分了?你去面试的时候说我是“某某开源软件”的开发人员,你是不是觉得自己巨牛无比?我想面试官也会另眼相看,你觉得他好意思再给出一个拿不出手的薪水吗?
第六:解决问题的时候,认清本质。最近我们组要开发一个MongoDB的客户端。因为开源的MongoDB客户端功能不完善,没有达到我们的需求,我就让我们组的一个同事开发。我知道他的水平,所以我故意不太和他讲具体怎么做,我也不是经常去问他做的怎么样了。完全靠他自己。我知道这个东西到最后肯定失控(没办法,交学费嘛)。上个星期五见分晓了:确实不行了。那么问题在哪里呢?就是该同志认不清他要做这个软件的本质在哪里?我只要达到什么功能就可以了!结果太多的功能都被复杂化设计,问题引出了新的问题,代码越来越多,越来越臃肿,伴随的现象也是越来越不着边际。使用了99%的时间去实现1%可能会遇到的问题,并且这个1%的问题并不是“”。这个软件就算是做出来,还是可控的吗?是不是又是一个焦油坑-----首先你的软件质量不能保证了;其次,你很难扩展;第三:你花费了太多无谓的工时……。
第七:多看书,多看网站(不是小网站),多练习。我提升自己的经验是多看书和网站。在书上你经常能学到一整套新的技术;网站上的文章能给你一些架构上的思考。因为技术是学出来了,你可以通过书本突击;架构是改出来的,不是设计出来的。所以网站上的文章那种短小精悍的模式正好符合,所以需要提高技术就去看书,需要学习架构方面的知识就去看相关网站上的文章。至于练习,我觉得这个各取所需吧!反正我是不太做练习的,我看一边代码基本上就理解了,但是我几个同事是边看书边写代码才能理解代码的,这些其实也是个人的习惯吧!
第八:学习提升主要靠自己。现在很多的人都觉得我来公司是来学习的;我在这个公司学不到什么东西。大家醒醒吧!公司不是学校,公司的本质是盈利,学校的本质才是教书育人。所以如果你想在公司里面学习东西,那么只有靠自己。别指望公司给你有多大的提升空间。除非公司万不得已,否则很少公司会正统的培训,培养员工。所以学习还是要靠自己,如果你只想着凭项目开发中学到的知识来支撑你整个职业生涯,别的时间可以用来娱乐,打游戏,玩,泡吧等等,那么我觉得你还是现在就转行吧!因为你可能过不了多久时间就要真的去考虑转行这个事情了。所以还不如现在就转行。俗话说;早死早超生嘛!
第九:懂得推销自己。让别人没认识你的时候就让人家知道你。这个是我最近一年才得到的经验。以前我老是觉得进公司的时候可以拿低工资,然后等自己的水平展现后再要求公司提高待遇。但是这条路被很多人证明是不现实的。你进公司的工资往往就决定了你在公司的种种。而且你的要求公司一般也是不太会答应。公司有严格的薪水制度,他也要面临一碗水端平的环境,所以这条被证明成功极少。那么你是否能改变一下你的做法呢?让你在没进公司的时候就让人家知道你的水平,这样你是不是就能得偿所愿了?!
篇4:架构师面试题
1. 设计文件系统
2. 数据结构for spreadsheet
3. 一个app需要用cache,怎么实现thread safe
4. social network, billions id, every id has about 100 friends roughly, what is
max connections between any two ppls. write algorithm to return min
connections between two ids: int min_connection(id1, id2)
you can call following functions
expand(id) return friends list of id
expandall(list) return friends union of all the ids in the list
intersection(list1, list2) return intersection
removeintersection(list1, list2)
5. Open google.com, you type some words in the edit box to search something, it will return lots of search results. Among these returning results (that is, website link), you may only CLICK some results that are interesting to you. The system will record the “CLICK”action. Finally, you will have the search results (i.e. url) and “CLICK” informatin at hand.
Question: how do you find the similarity of these searching?
6. 如何找出最热门的话题(根据tweets)。如果一个话题一直热门,我们不想考虑怎么办
7. Discuss design challenges of a distributed web crawler running on commercial PCs. How to utilize network bandwidth of those PCs efficiently?
8. Design a site similar to tinyurl.com
9. large log file,含有 customer id, product id, time stamp想得到在某一天中某个custom看网页的次数1. 足够memory 2. limited memory
10. 设计一个actor和movie的数据库的schema, 支持从movie得到它的actors和从actor得到ta出现过的moive (Google, phone, )
11. 某建筑有五十层高,打算装俩电梯,设计该电梯系统
12. how to design facebook’s newsfeed?
13. 一个文件里n行m列,每行是一个record,每列一个feature,你时不时要按不同feature排序和查找。不能用数据库,文件大小内存能装下,数据结构和算法不限,语言不限,给出你最好的办法。
14. Design online game
15. static 变量用来在整个class中共享数据.基于此,各种synchronization技术, 以及busy waiting的优缺点,啥时候要用基于busy waiting的 spinlock主要是基于性能的探讨。 如果有一个应用程序运行时没有达到timing constraint, 你如何去分析问题出在哪儿, 可以用什么工具或者技术。
16. 设计题, 有一个多台机器构成的cluster。 现在有大量公司的数据文件 (并有多个备份)。 如果设计一个算法,使得每台机器尽量均衡的使用,并且 每个公司文件的不同copy不能存在于同一台机器上。主要的Idea就是用round-robin的方式assign每个公司的原数据文件到一台机器,再结合使用hashtable。 Interviewer提到我的解法正是他现在在使用的解法。
17. Design a class providing lock function which provide lock only if it sees there are no possible deadlocks.
18. 设计一个分布式文件系统,给定path name,可以读写文件。具体的system design这里就不提了。其中一个细节是,给定path name,怎么知道哪个node拥有这个文件。我提出需要实现一个lookup function,它可以是一个hash function,也可以是一个lookup table。如果是lookup table,为了让所有client sync,可以考虑额外做一个lookup cluster。然后Interviewer很纠结,既然可以用hash function,为什么还搞得那么复杂。我就告诉他hash function的缺点。假定一开始有N个node,hash function把M个文件uniformly distribute到N个node上。某天发现capacity不够,加了一个node。首先,要通知所有的client machine,configuration 改变了。如果不想重启client machine的process,这不是一个trivial job。其次,文件到node的mapping也变了。比如,本来按照hash function,一个文件是放在node 1。加了一个node 后,它可能就map到node 2了。平均来说,N/(N+1)的文件需要move到新的node。这个data migration还是很大的。然后我就提出一些hash function的design,可以减少data migration。最后他提了一个问题,说要实现一个function,要统计distributed file system所有目录的大小。前提是,一个目录下的文件可能放在不同的node上。我说这个不就是在每个node上统计,然后发到一个merge吗。他说对,但是又问用什么data structure来表示。我说这就是hash table,key就是directory name,value就是大小。因为directory本身是树结构,这个hash table的key可以用tree来组织。最后让我实现一个function,把我说得这个data structure serialize成byte array。因为这个byte array就是网络传输的data。我用了depth first traverse。不过等我程序写完,才发现,用breath first traverse会更方便,code也会很简洁
19. 超大图的存储问题
20. 给个Lock w/ two atomic method lock and unlock(),请用lock实现一个文件读写的系统,要求:
1: reader blocks writer;
2: writer blocks reader;
3: writer blocks writer;
21。设计一个web cache server,假设存储网页数量是10个billion,打算怎么设计
22.你可以得到网站访问记录,每条记录有user IP, 写一个程序,要随时能算出过去5分钟内访问次数最多的1000个IP. 这个好像跟着这个rolling window 的precision 有关,所以我们暂且定为5秒钟一次window
23. Design free and malloc.
24. how to design data structures for a facebook network and how to design an algorithm to find connection? How to optimize it if data is distributed into multiple computers?
25. design a deck class and member function to randomly select a card from those cards which haven’t been selected before. (You can assume the number of this function call will never be larger than the number of cards) For example, we have a deck of four card: 1,2,3,4. First it may select 3, then next time it should randomly select one from 1,2,4… And design a member function to reset.
26. google search design problem. How to distribute data and how to design backup system
27. 设计一个online chat system
28. design bit.ly url shortening web service。算法设计,后端存储,中间层cache,前端load balance,最后是web analytics。
29. Design and implement an algorithm that would correct typos: for example, if an extra letter is added, what would you do?
30. Suppose there are 2 persons A and B on FB . A should be able to view the pictures of B only if either A is friend of B or A and B have at least one common friend . The interviewer discussed it for nearly 30 minutes . The discussion mainly included following points:
1. How are you going to store the list of friends for a given user?
2. File system vs DB
3. Given list of friends of 2 users, how are you going to find common friends?
4. If you are going to store the friends in DB then how will the table look like?
5. How many servers do you need?
6. How are you going to allocate work to servers?
7. How many copies of data will you need?
8. What problems will you face if you are maintaining multiple copies of data.
31. design structure for auto completion
32. 如何实现search suggestions。
33. 设计fb的系统支持like那个button
34. design 股票#,time,price;
-设计一个client side显示股票信息,给出尽可能多的user case
-在给出的user case里面,怎么设计客户端,使得客户段性能提高
-怎么设计server端
-数据如何传输
-server端如何保存数据
-怎么设计database table保存数据
-不用index怎么提高数据查询速度
-database是怎么实现数据查询的(要求从database implementation角度解释)
[架构师面试题]
篇5:遇见未来征文
花丛中飞舞着千万蝴蝶,她们都有艳丽的外表,华丽的服饰,但是,谁又能想到,在这之前,她们所经历的或许是人生中最痛苦的.挣扎——蜕变。从此,她们获得新生。
刘菲,一个东北女孩,走上了令很多人羡慕不已的明星路,就像光亮的蝴蝶,但却从没人去挖掘她走过的艰辛的路。她曾经独自流眼泪,曾经一个人穿越迷雾,擦干泪水,曾经为迷失的爱找回方向,最终破茧,蜕变。可是蝴蝶从来不会忘记她的前身,所以她仅仅是外表蜕变,内心的品质,气质却没有丢失。她还是她,乐观,爽朗,热情,黑色的土地赋予她的灵魂也没有丢失。
她的气质注定了她不再平庸,她飞翔了,来到了花丛中,或许现在花丛里的蝴蝶太多,太耀眼,她没有立刻被注意,但随着时间的推移,她的气质魅力一定会散发出光芒,使周围的一切都变得平庸。
终于,这一天来了。她低声吟唱《无双》,那以后,她就成了无双,没有人可以模仿她,她是唯一的。太阳为她升起,小溪为她流淌,百灵为她歌唱。
经过了多年,翻阅了数不清的面庞,她决定去寻找远方的那些不可思议的梦想。于是,在夕阳的余辉下,她飞向了远处…….
篇6:软件架构师个人简历
------- 基 本 资 料 -------
姓 名: YJBYS 性 别: 男
出生年月: 1988-10-25 目前所在地: 湖南
------- 求 职 意 向 -------
寻求职位: java软件工程师
求职地区: 湖南 工资待遇: 4000
到岗时间: 随时到岗
自我评价: 为人诚恳、自信,工作中踏实、沉稳、积极进取且有耐心。
服从上级安排且有良好的团队合作精神。
学习能力很强,敢于面对困难和挑战。
具有良好的心理素质和抗压能力,能适应加班。
------- 工 作 经 验 -------
就职公司: 湖南信息科技有限公司 公司行业: 信息技术和互联网(计算机软硬件,通讯)
就职时间: 1月到6月 就职部门: 软件部
公司性质: 民营/私营企业/非上市公司 就职职位: 软件架构师
工作描述: 参与J2EE项目的设计和编写,进行后台的日行维护和数据更新。
技能专长: 1.熟练使用JSP、Servlet、Jdbc等进行Java Web的编程开发。
2.熟悉Struts、Hibernate、Spring、Ibatis等框架,能熟练的.进行SSI或SSH整合开发。
3.熟悉JavaScript、jQuery等框架;掌握Ajax异步技术,并能应用其进行开发。
4.熟练使用Eclipse、MyEclipse、VS等IDE开发工具。
5.熟练应用Apache、Tomcat、WebLogic等服务器进行Java Web的开发配置和部署。
6.熟悉Oracle、Sql Server ,了解MySQL等数据库应用开发。
7.熟练运用SVN、CVS版本控制工具进行项目的配置管理。
8.了解UML统一建模语言,能够使PowerDesigner等建模工具。
9.熟悉Linux的基本操作。
10.熟悉c#,了解c、c++。
篇7:软件架构师岗位职责
1.根据客户需求及市场行业需求进行软件构架的制定(技术框架和业务框架);
2.对软件构架相关人员进行技术和业务培训,并指导开发人员进行开发;
3.解决软件开发过程中遇到的问题;
4.为技术决策提供规则,平衡各类涉众的不同观点,化解技术风险;
5.负责组合和带领公司内部员工研究与项目相关的新技术;
6.完成领导交给的其他任务。
篇8:软件架构师岗位职责
1、领导与协调整个项目中的技术活动(分析、设计和实施等)
2、推动主要的技术决策,并最终表达为软件构架
3、确定和文档化系统的相对构架而言意义重大的方面,包括系统的需求、设计、实施和部署等“视图”
4、确定设计元素的分组以及这些主要分组之间的接口
5、为技术决策提供规则,平衡各类涉众的不同关注点,化解技术风险,并保证相关决定被有效的传达和贯彻
6、理解、评价并接收系统需求
7、评价和确认软件架构的实现
篇9:软件架构师岗位职责
架构师的职责就是设计一个公司系统的基础架构,并提供关于怎样建立和维护系统的指导方针。具体来讲,架构师的职责主要体现在以下几方面:
1、负责公司系统的架构设计、研发工作。
2、承担从业务向技术转换的桥梁作用。
3、协助项目经理制定项目计划和控制项目进度。
4、负责辅助并指导系统分析开展设计工作。
5、负责组织技术研究和攻关工作。
6、负责组织和管理公司内部的技术培训工作。
篇10:数据架构师岗位职责
(1)架构服务部门的关键岗位。
(2)负责银行大数据分析和建设相关系统,为客户提供高质量的咨询及实施服务,为客户提供架构设计类项目的解决方案策划、咨询实施、产品搭建等售前、售中、售后一系列服务或培训服务。
(3)带领团队推进客户架构服务相关项目,支持新业务的开发拓展,结合实践经验提出对产品的优化改进建议。
(4)带领团队进行方法论及内部知识体系的提炼和完善工作。
★ 公司行政工作计划
★ 初三小作文
★ 新闻报道范文开学
【未来架构师征文(推荐10篇)】相关文章:
行政部年度工作计划2022-08-08
人事行政工作计划2023-10-09
行政人事年度工作计划2023-10-19
颜色800字作文2022-08-23
行政部的年度工作计划2022-12-21
上半年HR工作总结2023-12-19
创新创业主题征文12002023-12-09
2022年行政部年度工作计划2024-03-18
培训的方案2024-02-06
校园建设方案的策划书2022-11-08