在 upwork 上找了个兼职, 和老板起冲突了, 大家来吃瓜

2022-07-04 17:59:26 +08:00
 FaiChou

五月初在 upwork 上有个工作推送给我, 老板是德国人, 要做一个项目, 进行了一次电话交流, 最后签了合同, 合同上写 7 月 30 号之前要做一个 app 出来, 当时老板的想法是做一个喝水 app, 提醒喝水, 再加上硬件 BLE 控制的智能水杯(BLE 这块不是我负责). 项目是用 ReactNative 来做, 后台用的 Firebase, 很少有接口, 前端直接操作 Firestore(读写 db), 项目团队初期是有一个后台, 一个负责硬件 BLE 的, 一个 UI, 还有俩负责前端(iOS+Android).

前端另一个哥们 RN 写的不多, 写了一点功能, 然后就离开了项目. 前端项目基本都是我做的, 包括搭建整个项目, 集成各种第三方库, 打包分发(包括 codepush), 还有 90%以上的页面.

介绍下我吧. 我想找一个兼职, 每周干 20 小时, 赚点外快, 我写过几个 RN 项目, 可以说有个 2 年的 RN 开发经验(从我的 github 上可以看出来), 和老板签的合同是 $20/hours.

经过几次开会, wireframe(原型图) 变得越来越复杂, 不仅仅是一个喝水类 app, 变成了养宠物为主要功能, 喝水 /咖啡 /维他命用来喂养宠物, 进行一些挑战(喝水 /步数挑战等)可以解锁新宠物, 有商店, 可以花钱买宠物(in app purchase), 买各种宠物的配件(墨镜 /鞋子 /帽子), 当然提醒喝水的功能也是有的. 宠物在首页是动画的, 我推荐用 LottieView, 用起来也没有任何问题. 当然开会也说过要加 NFT 和 AI 识别喝的什么饮料. 然后被我们 pass 掉了.

项目管理用的 Monday, 交流用 slack, UI 用的 Figma, 每周至少一次视频会议, 最近几次都是晚上九点开到晚上十一点半.

冲突 1:

开发初期, 老板找了一个印度人 A, 负责整个团队的技术, 他比较擅长 backend, 但到目前做的东西就是在给我提 bug, 项目逻辑都搞不懂, 初期我照着原型图做的 app 就给我找 UI bug. 后来他和后端哥们也起了一次冲突, 没经过后端哥们的同意, 改了代码, 而且没有测试, 直接提交了代码, 然后给后端哥们说: "我改了你的代码, 你测试下有没有问题". 后来后端哥们把他教育了, 最后印度人 A 承认了:

To be honest, this is my first official project of firebase. I do follow in my normal project. I did 1 project for learning purpose before 2 years so didn't understand firebase methodology so well.

冲突 2:

条形码识别的问题, 那天我刚开发完条形码识别的功能, 因为是用的第三方 api, 所以我让后端调用这个 api, 提供一个接口给前端用, 我把功能都实现了. 结果晚上赶上开会, 我还没有测试充分, 老板让印度人 A 给他演示一下, 结果扫了很多商品都不能成功. 于是老板很生气, 说了很多 F word. 把责任都怪我头上. 其实就是第三方 api 的问题, 测试的 key 不给正常商品的返回结果, 而付费的 key 老板也没有买, 后端只是 wrap 了一层, 也没给我一些错误信息. 第二天又和我 video call, 我俩互相说了一些 F word, 他一直觉得 progress 又问题, 一直让我给他承诺什么时候能做完某一大部分的功能. 于是我让他在 Figma 上面给我过一遍需求, 结果走了几步就走不通, 这上面全是 unclear 的逻辑. 没有一个 project manager 来做详细的功能设计. 没有需求设计也没有开发设计, 这就是这个项目最大的问题, 我给老板也解释了, 我只是个 coder, 不想参与这些功能需求的设计.

冲突 3:

老板觉得项目进度有问题, 让我推荐个人, 我推荐了我的朋友, 结果他没邀请我的朋友来, 而是直接找了一个印度人 B, 这个人号称 6 年 RN 开发经验. 在上周的第一次会议上, 直接对我的代码进行 code review, 提了一大堆小问题, 问题有:

  1. 把所有 png 替换成 svg
  2. 不能使用 Context 应该使用 Redux, 如果大型项目 Context 不利于维护
  3. 删掉 src/images 文件夹, 用 src/Assets/images
  4. 尽量抽离 component 出来, 使其 resuable
  5. 删掉 src/tools 使用 src/Utils

等等一系列这种问题. 确实 svg 换成 png 比较节省存储并清晰度会有提升. 但其余的都是个人开发的习惯而已, 对于第四条可复用的组件, 这更是模棱两可的话题, 比如组件抽离出来要写更多的代码去维护, 写更多的属性去控制, 就没有必要去抽离了, 对于一些公共的组件, 我已经做了一大部分的公用抽离.

但是老板不懂技术, 老板听后, 直接炸锅了, 问我为什么不一开始就做好? 他觉得我这代码有很严重的问题.

冲突 4:

上上周有个印度人 C 的加入, 应该是个实习生, git rebase 不会用, 开始解决了几个 bug, 但是没有测试充分, 却引来了其余的 bug. 提交代码前也没有 lint 代码, 我花了一些时间去 check 他的代码.

印度人 B 又新推了一个方案, 提交代码前创建分支, 然后提交 PR 给她, 她来合并或者 reject. 于是我就说, 咱这项团队规模不适合这种, 直接开发提交更快, 并不会有什么问题, 提交 PR 检查费时, 它适合开源项目或者团队规模比较大的项目.(当然的确有利于项目规范), 于是我艾特了群里其他几位, 另外两位印度人表示赞同 PR..

冲突 5:

我想退出项目不干了, 因为很明显老板想让 B 取代我, 而且其余几个印度人也一直挤兑. 但是老板想把钱全要回去, 在 upwork 上开 case. 因为合同里写的是七月 30 号要上线, 我这违约. 并且不满意我的代码 老板直接说, 其他三位开发者都对我的代码不满意.

我做了哪些功能呢?

  1. 登陆注册(邮箱 /谷歌 /FB 登陆)
  2. 完善个人信息(姓名 /年龄 /身高体重 /运动量 /喝水目标)
  3. 欢迎页(有个动画)
  4. 首页宠物动画
  5. 挑战逻辑(发起喝水挑战完成挑战)
  6. 添加喝水(直接列表添加或者扫码)
  7. 夜晚模式(所有页面支持(
  8. i18n (GER 和 ENG)
  9. 商店页面(商店列表, 购买宠物, payment 这块没有做)
  10. 宠物管理页面(命名宠物 /宠物列表 /切换宠物)
  11. 推送通知功能
  12. 运动数据获取(Google Fit/Apple Health)

截图几张证据:

  1. 老板想退全款: https://i.imgur.com/yEGrHTH.png
  2. 关于 PR 的讨论: https://i.imgur.com/FzsPF1n.png
  3. 和老板的一些谈话: https://i.imgur.com/OSind3h.png
  4. 合同的一点内容: https://i.imgur.com/0yAUtRS.png

现在我的感觉是:

  1. 老板想白嫖我的工作
  2. 印度人 B 是印度人 A 找来的

我的问题:

老板肯定会在 upwork 上开 case, 我已经提现过两次了(upwork 直接打款到我的国内银行). 这钱真能要回去? 我的 upwork 账号肯定受影响, 这我已经了解.

20070 次点击
所在节点    职场话题
112 条回复
g0thic
2022-07-05 10:14:40 +08:00
这登录界面图片里 左边是设计稿 右边是你开发的吧。好像没一块元素是和设计稿一样的 楼主如果是专门做前端开发的 那也确实牛逼 要是在我团队估计第二天就别来了
g0thic
2022-07-05 10:19:48 +08:00
@FaiChou 你不能这样想 别人和你不认识 不熟悉你的开发习惯 人家第一眼看到你这 UI 就这完成度 你让人家怎么相信你的业务逻辑能写好呢?靠你嘴巴去解释嘛,所以不要因为不重要 后面可以慢慢改 所以一开始就瞎鸡巴乱写 尤其是在陌生的团队 你这样既不尊重设计师 也让队友对你的工作能力和态度持怀疑态度。
richardwong
2022-07-05 10:45:59 +08:00
1000

这一堆阿三真够恶心的
maddot
2022-07-05 10:59:36 +08:00
以前在 elance 上看到一些项目标明印度的不要投标
maddot
2022-07-05 11:03:29 +08:00
不过老板不懂技术,楼主页面做成这样也是缺乏“心机”的表现
zyh94946
2022-07-05 11:09:10 +08:00
感觉你对像素级找问题有什么误解。。不用放大图片,肉眼可见的问题都不少,大小写不对,图标大小也不对 😇
xrr2016
2022-07-05 11:19:37 +08:00
及时止损
POPOEVER
2022-07-05 11:24:30 +08:00
@FaiChou 就这么通用的一个 login 界面还 "look so pretty",她是不是还要开唱来着,笑死我了
Shane
2022-07-05 11:35:17 +08:00
@FaiChou "他在 upwork 上开 case" 这是什么意思?你这应该 hourly contract 吧,如果是他要求 refund 不用理会,upwork 会保护你的收入,唯一麻烦的是结束合同后客户可能给差评,影响 upwork JJS.

建议及时止损吧,如果真得到负面评价,可以尝试向 upwork 申述,或者如果是 Top Rated ,直接自己删除掉。
zhw2590582
2022-07-05 11:36:20 +08:00
上周有一个老外问我做不做兼职,我开口 40 刀每小时,现在看来我真的开高了,哈哈哈,后面那人没理我
POPOEVER
2022-07-05 11:37:45 +08:00
@Shane Upwork 这类平台有回评功能吗?反手一个差评回去
FaiChou
2022-07-05 11:41:22 +08:00
@g0thic
@maddot
@zyh94946 哈哈你们说的对, 我写的这个页面 ui 有问题. 的确落下了很多把柄. 既然做前端, 页面一定要和 ui 一致, 而且要 responsive 的宽高. 以后有机会再写, 一定要注意这点.
Shane
2022-07-05 11:41:55 +08:00
@POPOEVER 当然有的,双方可互评的。
KillPaul
2022-07-05 11:44:47 +08:00
作为 UI 之前小小尝试过在 upwork 找兼职,但是从来没有成功过。不知道是不是初期也要进行一些类似“刷单”的操作?否则大家看到你 0 个项目是不是就都 pass 了
FaiChou
2022-07-05 11:45:46 +08:00
@POPOEVER 合同结束后都有相互评价的.


@Shane client 已经在上面开了 dispute, 这是他写的:

> The service provider cheated us on his skills and did not deliver the work agreed in the contract. He didn't deliver in time and the work he delivered is incomplete and the quality of the code is with many problems.

> did not deliver the project in time. The code and code structure are insufficient and bad quality. The freelancer promised to deliver good quality. Instead he didn't listen to clients direction and ignore the timetable as well as the project requirements. We expect full refund.

> The freelancer also signed a contract with us. He better check the terms & conditions.

> We strongly recommend to remove the freelancer from your platform to avoid further damage to other clients.

事情已经升级到不可挽回的地步了. 这是我的回复:

> Client can not say like "bad quality". Because this is not the final results. It's easy to adjust some UI pages. Also the client is not polite while meeting, always say dirty words. He is not satisfy with our progress, because all the program logics are not clear, and there's no project manager can clear all requirements. I am just a frontend developer, he even let me to do some animations. I never told him I can do that. I have gave some screen recordings, and he was satisfy with my work. But now he said it's "bad". I really don't know what exactlly he thinks. And I will give some screenshots what he has ever said.

> "did not deliver the project in time" that's not true. In the beginning, Simon told us to build an APP like "REBO" app, this is realizable. And we all agree. But after our developing, the program became more and more complex, there are so many functions that is much bigger than "REBO" app. Also his UI pages are not clear for user logics, so it makes hard to code, we have to spend much time on figure out what, how and why this UI designed so. And with his new design, we can not deliver app in time, because it's UI is missing also.

附件里面也有很多证据, 包括我录制过一些视频给他, 他也觉得很满意, 都是他的直接回复"looks pretty good".
shyrock
2022-07-05 11:47:34 +08:00
之前在 upworks 做过一单,老板不停加需求,最后弄得不欢而散。结论是,这个平台已经完全印度化了,别看老板是西欧人,都把你当印度人用,你是卷不过的。

不过,你这实现效果跟设计差得也是有点远了,建议退一部分吧。
BigDogWang
2022-07-05 11:50:19 +08:00
pr 怎么看也应该你来审核呀
luvsic
2022-07-05 11:53:00 +08:00
可能老板没认识到前端工作都是你做的,另外几个印度人除了找茬领薪水,没有什么贡献。
或者产出质量有问题,导致老板不信任你。
既然已经提现了大部分,直接止损,没必要花时间证明你是对的。
Shane
2022-07-05 11:59:00 +08:00
@FaiChou 这。。想让 upwork 删 freelancer, 这种 client 真是太奇葩了。。
留好证据,结束 upwork 合同吧,以你的口语能力,找个更高 rate 的应该问题不大。
FaiChou
2022-07-05 12:00:10 +08:00
@BigDogWang 是的, 我也觉得应该我来弄 pr, 而不是突然来了一个人, 项目需求都不明白, 就直接重构了我的代码并且要求以后提 pr 给她.


@shyrock “跟设计差得也是有点远了,建议退一部分” 我们约定这个周结束, 在这个周内我可以把所有页面都调整成和设计图 100% 相似.


@luvsic ”产出质量有问题,导致老板不信任你“ 这是一部分, 另外一部分是老板亲口说的, 另外三个人在背后都说我代码质量有很大问题. 我倒是很想知道, 再给他们 2 个月, 能做成什么样.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/864029

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX