设为首页收藏本站

爱吱声

 找回密码
 注册
搜索
查看: 8958|回复: 61
打印 上一主题 下一主题

[信息技术] offshore的笨蛋们

[复制链接]
  • TA的每日心情
    开心
    2023-1-5 00:48
  • 签到天数: 2591 天

    [LV.Master]无

    跳转到指定楼层
    楼主
    发表于 2012-7-26 01:18:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    本帖最后由 老兵帅客 于 2012-7-25 12:20 编辑 # {5 `# J5 l  [* m- P. M! Q7 ?  o
    $ T) ~7 B* ]8 Y5 _: r4 F" ?
    刚刚解决了一个performance issue,事情是这样的,我们的一个项目所使用的一个web service是由我们公司印度分公司的员工,我们称之为offshore team,完成的,这个东西在测试服务器上工作没问题,但是发布到生产机以后遇到了严重的performance issue,因为客户的访问请求居然需要六到八分钟才能完成,届时客户界面那边早就time out了。客户要求offshore team解决这个问题,他们找了半天找不到原因,没办法这件事就交给我们来解决了。
    7 x) ~2 y9 l4 s7 m/ x, D
    6 F, j6 \, g* d+ |" p1 j我找来代码,发现里面居然没有任何log语句,因此你无法通过log信息来发现问题出在哪里,这程序是怎么写的和测试的?没辙,咱自己来给它加上所需要的log语句吧,然后安排重新发布到生产机上去。说到这里有人可能会问,你怎么不先在测试机上测试而直接上生产机了呢,回答是这程序在测试机上没问题,而在生产机上有问题,那唯一的可能就是数据量导致的问题,因此发布到测试机没用,还是直接上生产机吧。
    4 J3 }4 Y- ~  \# e6 A8 }
    ! L* |/ z  F5 v发布到生产机上,安排客户进行测试,发现问题出在了JDBC语句上,这句话用字段值来搜索所需要的记录集合,数据库表里面对应字段类型是varchar2,而我们的offshore家伙们的对应JDBC PrepareStatement语句居然是setLong,这样每个记录都需要做一次数据类型的转换,这么干数据量小的时候没事,一旦大到了一定程度,这性能能不完蛋嘛。
    , X" |) Z. Q: q( G
    6 B) I1 g+ k7 J" x# y8 V发现了问题,解决方案也就简单了,在java程序里面预先转换好数据类型,然后把setLong改成setString,再把程序重新发布到生产机上去再测试,这回好了,从原来的需要六到八分钟减少到不到一秒钟,完事了。
    ! ~7 T5 `* X3 e& R2 N# l' `1 R( [' D2 D! H& p$ W" Z) a3 T3 F, D8 ~
    offshore team这帮家伙水平也忒次了,居然不懂得要尽可能减少数据转换次数这个基本常识,从而导致了这次的性能问题。出了问题自己还没办法解决,只好求助加拿大这边的人来帮忙,这样的out sourcing有什么实际意义呢。
  • TA的每日心情
    奋斗
    2020-2-8 10:08
  • 签到天数: 2 天

    [LV.1]炼气

    沙发
    发表于 2012-7-26 02:24:50 | 只看该作者
    我现在也成天干给offshore team擦屁股的事。
  • TA的每日心情
    开心
    2023-3-1 00:08
  • 签到天数: 2397 天

    [LV.Master]无

    板凳
    发表于 2012-7-26 02:49:41 | 只看该作者
    OutSourcing唯一用处就是给那些愚蠢自大的Business Leader们一个机会,来显示显示他们也“懂得IT潮流”。。。9 O2 q0 o, D; h7 t- c- _- Z# H
    0 |- e' D! k" h- H( r( u; }" R
    仅此而已。。。
    - O* n- Y+ y: c* Y7 N! ?6 _3 Y: o3 _/ @. W) S# m: K3 X
    7 T: O& m" G  ]

    0 N+ }( s. T2 k% E7 c3 S1 E
  • TA的每日心情
    开心
    2023-1-5 00:48
  • 签到天数: 2591 天

    [LV.Master]无

    地板
     楼主| 发表于 2012-7-26 03:01:43 | 只看该作者
    MacArthur 发表于 2012-7-25 13:49
    & M+ h" L& b  \5 e; YOutSourcing唯一用处就是给那些愚蠢自大的Business Leader们一个机会,来显示显示他们也“懂得IT潮流”。。 ...

    9 |, o( r7 u9 |他们的主要用处是在统计报表上面告诉高层,我们通过out sourcing节省了多少多少开支,现实中就算了。
    ( B- n/ z! G0 m! e7 e
    1 T  r) v( e% P+ l$ z5 A; A; O6 S我们的客户已经明确表示,在以后的项目中不再考虑offshore的人员了,原因就是他们的表现太差,仅靠本地人员来救驾,那还不如直接用本地人员算了。
  • TA的每日心情
    开心
    2023-1-5 00:48
  • 签到天数: 2591 天

    [LV.Master]无

    5#
     楼主| 发表于 2012-7-26 03:02:04 | 只看该作者
    机器猫 发表于 2012-7-25 13:24
    6 t1 w/ g) Y1 ~4 W7 K& p* X1 N我现在也成天干给offshore team擦屁股的事。

    + c+ e1 e8 H, x! m" e嗯,同病相怜啊
  • TA的每日心情
    慵懒
    2019-6-5 13:01
  • 签到天数: 115 天

    [LV.6]出窍

    6#
    发表于 2012-7-26 08:53:25 | 只看该作者
    其实软件这个行当不适合外包,尤其是offshore的那种。除去成本与能力之类原因,软件产品本身的质量控制没有直接的手段。因为他本身并不是有形有质的。你能对硬盘质检,但是检测硬盘中的软件代码质量,却要几乎从头到尾读一遍代码。这个成本很高,而且也依赖于检测人的自身水平。
    ( p' U4 m5 j/ D8 X% l( H4 Q6 y目前的质量控制只是一种过程控制,而且注重形式。所以,有可能生产出来一堆华丽而规范的垃圾。。。

    该用户从未签到

    7#
    发表于 2012-7-26 09:14:27 | 只看该作者
    成本上来说,offshore team 主打 + 本地人员擦屁股 < 本地人员全部搞定 就可以。+ c% D& Q% ^" j4 X9 G2 p

    6 k+ a' u( M& Z各种个案都有。我算是在中国的offshore team吧,有很好的工程师,也有差一些的工程师。总体来说比美国的差,但是搞个一年半年,抢美国工程师的饭碗没问题的。
  • TA的每日心情
    开心
    2023-1-5 00:48
  • 签到天数: 2591 天

    [LV.Master]无

    8#
     楼主| 发表于 2012-7-26 10:02:41 | 只看该作者
    明月回春 发表于 2012-7-25 19:53 " ]- c' D6 [& d
    其实软件这个行当不适合外包,尤其是offshore的那种。除去成本与能力之类原因,软件产品本身的质量控制没有 ...
    % W" c% C3 Y* |) V( o5 x
    说的很对,问题是我们的offshore team出来的东西连华丽都没有,就剩下垃圾了。" P: H; `0 \$ k: O; z% n# A- q* Z
    7 m3 U7 C9 ~5 Y/ Q8 W9 b
    我们这个项目一共用了三个web service,原来打算都让那边的人来做,结果有一个半年做不出来,被我们这边的一个家伙一个礼拜搞定,还一个被我彻底重写了,就剩下现在这个貌似还行的,现在发现还是不灵啊。我今天收拾的这个有多复杂呢,实在是很简单,就是一个用JDBC写的sql select语句啊,连这都搞不定,算什么呢。

    点评

    其实也不是所有的offshore都这么菜。这件事之所以“典型” 是因为菜的有点不可思议,对吧。据我观察,我们公司现在offshore出来的质量,不必HQ的差。  发表于 2012-8-10 09:10
    谁知道那边是怎么招的人  发表于 2012-7-26 18:34
    呵呵,成本压得太低了吧?这都用了什么样的人来搞的啊。  发表于 2012-7-26 13:00

    该用户从未签到

    9#
    发表于 2012-7-26 10:02:49 | 只看该作者
    写过几次sql的半吊子路过。。。
  • TA的每日心情
    开心
    2023-1-5 00:48
  • 签到天数: 2591 天

    [LV.Master]无

    10#
     楼主| 发表于 2012-7-26 10:04:36 | 只看该作者
    库布其 发表于 2012-7-25 20:14 # e; F% }0 I" L$ u' V
    成本上来说,offshore team 主打 + 本地人员擦屁股 < 本地人员全部搞定 就可以。
    * u& T" D: r; t- D& n5 \
    & ~' w& {8 L# Q  k各种个案都有。我算是在 ...

    1 w6 I4 K4 |* M& u$ g; x6 ~% F国内的软件工程师要比印度的强多了,但是问题在于两点,一个是时差问题,正好是背靠背,再一个就是语言问题,我们要求直接能电话谈工作,这个就很难了。
  • TA的每日心情
    开心
    2023-1-5 00:48
  • 签到天数: 2591 天

    [LV.Master]无

    11#
     楼主| 发表于 2012-7-26 10:05:25 | 只看该作者
    假如十八 发表于 2012-7-25 21:02
    # F. K4 u; P. a$ X) D  g. N8 F写过几次sql的半吊子路过。。。
    4 q9 D( U' `% s% [( G6 a5 ~2 P3 \
    数据库专家啊,崇拜。。。。。。

    该用户从未签到

    12#
    发表于 2012-7-26 10:09:20 | 只看该作者
    老兵帅客 发表于 2012-7-26 10:05
    + y0 m  y0 n; C数据库专家啊,崇拜。。。。。。

    ' n2 E6 Y/ d- x8 ]别逗了。。。我就会写个select。。。那种从sysobjects里面抽字段名玩来玩去的事儿我是不会干的~

    点评

    膜拜英明神武18帮主  发表于 2012-7-26 15:35
    膜拜帮主~  发表于 2012-7-26 10:34
  • TA的每日心情
    慵懒
    2024-4-22 17:53
  • 签到天数: 1477 天

    [LV.10]大乘

    13#
    发表于 2012-7-26 10:25:12 | 只看该作者
    假如十八 发表于 2012-7-26 10:09
    3 m3 R6 d7 `) _4 A别逗了。。。我就会写个select。。。那种从sysobjects里面抽字段名玩来玩去的事儿我是不会干的~ ...
    ; j+ w0 X+ q  @/ \9 u& b# ]
    我做了十几年了,帮主说得sysobjects我都不知道是啥
  • TA的每日心情
    奋斗
    2018-11-15 14:12
  • 签到天数: 499 天

    [LV.9]渡劫

    14#
    发表于 2012-7-26 10:28:51 | 只看该作者
    很多美国公司已经开始insource回来了吧
  • TA的每日心情
    开心
    2023-1-5 00:48
  • 签到天数: 2591 天

    [LV.Master]无

    15#
     楼主| 发表于 2012-7-26 10:29:31 | 只看该作者
    hotlemontea 发表于 2012-7-25 21:28 # f- Z" k* ?0 i& I4 ?8 |$ W
    很多美国公司已经开始insource回来了吧
    " A0 f, y0 u/ |  h" g  }  N
    美国不清楚,加拿大已经在往回收了。

    该用户从未签到

    16#
    发表于 2012-7-26 12:21:29 | 只看该作者
    Whatever happened to load test in Staging environment?

    点评

    压力测试咋做的?  发表于 2012-9-5 13:35
    看不懂?  发表于 2012-8-10 20:55
    大概是说分阶段逐步接近现网的压力测试吧。  发表于 2012-7-26 13:02
    你这个英文每个词都懂,为啥看不懂你说啥?  发表于 2012-7-26 12:31

    该用户从未签到

    17#
    发表于 2012-7-26 12:58:43 | 只看该作者
    老兵帅客 发表于 2012-7-26 10:04 2 {5 i5 O/ U% [+ w( O" I
    国内的软件工程师要比印度的强多了,但是问题在于两点,一个是时差问题,正好是背靠背,再一个就是语言问 ...
    2 l7 I9 u" F( ?9 {7 V) @9 \$ X
    时差有利有弊。* c# M: h# i2 h+ V9 g
    我就说个利吧。全球都有用户,出了事情总会有人第一时间接手开始搞,等这头该休息了,一个mail出去后面爬起来上班的继续搞。
    $ Z1 x/ b  w' m& r7 G8 K& O
    # X' X9 q: ]: U1 E) r语言在我们这里基本还可以,磕磕绊绊把问题搞清楚说明白,还是没问题的,基本没有只懂哑巴英语的人。。。其实哑巴英语的,赶鸭子上架几次,也就开口了。开口了,就不怕说不明白了,十几年的英语教育,还是有些作用的。! a' s8 T9 k) W3 V% z# r9 Z, O4 n( N3 M
    % Z" [0 A4 D! i* _) ^
    最后的权衡,估计还是人力成本为大头。同样级别同样能力养一个美国工程师,大概在中国能养2-3个同样级别能力的。
  • TA的每日心情
    奋斗
    2018-9-13 10:09
  • 签到天数: 1 天

    [LV.1]炼气

    18#
    发表于 2012-7-26 13:10:25 | 只看该作者
    难道他们不做大量数据的测试吗?测试机上跑完了就完了,那测试也应该有Performance Testing,应该能检测到大量数据时候出问题的情况的呀,应该能预料到会有大量数据的情况下吧。这不能说Offshore team出问题。。。是Offshore testing team出问题
  • TA的每日心情
    慵懒
    2024-4-22 17:53
  • 签到天数: 1477 天

    [LV.10]大乘

    19#
    发表于 2012-7-26 13:53:18 | 只看该作者
    晨池 发表于 2012-7-26 13:10
    3 t: v' i' {- {( {& c难道他们不做大量数据的测试吗?测试机上跑完了就完了,那测试也应该有Performance Testing,应该能检测到 ...

    9 V! {4 a9 f( [# @. M3 |功能测试很可能做,性能测试吗,哇哈哈。
  • TA的每日心情
    开心
    2023-1-5 00:48
  • 签到天数: 2591 天

    [LV.Master]无

    20#
     楼主| 发表于 2012-7-26 18:35:21 | 只看该作者
    四处张望 发表于 2012-7-25 21:25
    $ J& c: F4 r$ E1 ^3 L- S" n我做了十几年了,帮主说得sysobjects我都不知道是啥

    9 }: A5 F! ]9 W/ G# s俺也不知道

    手机版|小黑屋|Archiver|网站错误报告|爱吱声   

    GMT+8, 2024-5-5 15:47 , Processed in 0.050480 second(s), 20 queries , Gzip On.

    Powered by Discuz! X3.2

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表