https://www.1point3acres.com/bbs/thread-1093093-1-1.html
donnice :
今天有点时间,但又不想干正事,就跑来地里写一写这个一直很想聊的话题。想到哪儿写哪儿,大家随便看看。这个贴我会长期更新,有什么新的想法都会在合适的时机和大家分享。
地里以及xhs一直有讨论做副业这件事,也有一些贴子提到过教育行业是一个常见的发展副业的方向,但更多的集中在求职咨询,留学中介这种Coach类的工作,真正算得上是正儿八经教书的Adjunct Faculty却鲜有人提及,因此我想作为这个方向为数不多的实践者,谈一谈自己的经验和体会,或许能帮大家打开思路。以及下文所有的Adjunct Faculty我都会用AF这个缩写来替代。
以及放个防杠声明:我不认为Adjunct可以和真正的Professor相提并论,发在这个版块只是因为我找不到更适合的了,如有冒犯敬请谅解。
今天时间有限,我就在这儿首先介绍一下AF是什么,毕竟地里的各位对于这个称谓或许比较陌生。AF翻译成中文的话,说得客气点叫客座教授,说得直白点就是代课老师,一般指在大学里只负责part-time教课,完全不负责科研的群体。学生或许出于尊敬或者单纯不想动脑子记你的名字叫你一声Professor,但自己可千万别飘,拿大学教授自居了。网络上,无论是中文世界还是英文世界对于AF的讨论其实都很少,仅有的几个讨论话题都集中在Adjunct很穷这件事上。AF待遇差这件事是真的,具体的我之后会提到。但我认为对它的讨论should be more than that,因为事实上,在美国大学里,尤其是非研究型大学里。根据我谷歌随手搜出来的数据,现在在美国大学的教职人员,或者说能被称为“大学教授”的这批人,70%是由AF组成的。也就是说在美国大学讲台上给大家上课的,有70%的是兼职。当然我相信在研究型大学里这种情况少一些,尤其是高级的课程,主要还是正式的tenure-track教授负责的,再不济也是全职的teaching professor。但在大家所忽略的teaching school以及community college这个级别的学校里,AF是绝对的主力。
然而和AF的无处不在形成鲜明对比的是其收入。我不知道为什么谷歌搜出来的说法是Adjunct普遍在美国一年能挣12万美元,这显然是错误的,比诸多助理教授的起始工资都高了。绝大部分Adjunct的工资是按照课程来计算的,即教一门一学期的课给一定数额的钱。对于一门3学分的课,不同的学科和学校之间差距很大,从2000多到1万多的都有。我听说过的最壕的大概是我们地里的大红人NEU,据我一个同事说,CS系能给拥有PhD学位的Adjunct开出18K一门课的工资,是我等x丝想都别想的。绝大部分学校,我估计开一门CS的课能给个5000-8000左右。文科或者纯理科比较惨,一般3000出头是很常见的,哪怕在高消费地区。所以说如果是把Adjunct当成全职工作来做的话,待遇确实很差,一年满打满算三学期,一学期撑死了教三节课吧,按照一门课6000算,一年年薪只有5万出头,这在西雅图这种地方根本活不下去。然而如果是在小地方的话情况只会更糟,因为人少,学校少,收入只会比这低更多。所以AF作为一份全职工作的收入,无论在哪里,肯定都是属于低保户水平了。而且真的把AF当全职来做的,往往要同时奔波好几个学校,像赶场一样,生活压力就更大了。
AF一种比较常规的招聘流程是,学校的招聘平台上长期发布招AF的信息,搜集大家的简历但并不立刻发面试,维持一个candidate pool。然后系主任从前一个学期开始甚至更久之前规划下学期开哪些课,看哪些课必须开但缺人来教,去pool里挑人,一个个打电话问过去,遇到合适的就发面试。面试流程各个学校都不一样,最常见的大概就是让应聘人当场讲半节课,也有的学校不需要讲课,就直接问问你基本的知识,搞个简单的算法题或者OOD做做,看看你口头表达能力,临场应变以及和台下互动的能力如何。另一种流程,也是我个人遇到的case是,出于各种原因,学校到快开学前几个礼拜才开始公开招聘,然后恰好被我看到了,便邀请我去面试,然后急吼吼地就在啥都没准备的前提下拉上讲台讲课了。我说了这么多,是想说明AF是按照课程来招聘的,这工作并不那么容易找。有些学校看起来在招人,但只是在build candidate pool,或者他们确实急着要人,但你之前没有这门课需要的工作经验或者teaching经验,那可能也不会要你。而且就算真的面上了,作为副业,我认为其在金钱上的回报也不算很高的,顶多只是稳定地一个学期(10-14个星期左右)能赚个小几千。和其辛苦程度比,尤其是初期,我认为是得不偿失的,具体我下面会提到。但好处是,一旦要你了,他们一般会期待和你建立长期的合作关系,因为实话说学校尤其是CS系,招个合适的AF也不容易。只要你不是教得太烂,所有学生都给你差评,学校是希望你能一直教下去的,所以算是一份比较稳定的工作。以及招人的bar并不高,一般要求有master学位,然后业界有相关经验就可以。经验足够多的,你是bachelor毕业也无所谓。
先说这么多,下一段讲讲自己的经历。
楼主
donnice
: 地里以及xhs一直有讨论做副业这件事,也有一些贴子提到过教育行业是一个常见的发展副业的方向,但更多的集中在求职咨询,留学中介这种Coach类的工作,真正算得上是正儿八经教书的Adjunct Faculty却鲜有人提及,因此我想作为这个方向为数不多的实践者,谈一谈自己的经验和体会,或许能帮大家打开思路。以及下文所有的Adjunct Faculty我都会用AF这个缩写来替代。
以及放个防杠声明:我不认为Adjunct可以和真正的Professor相提并论,发在这个版块只是因为我找不到更适合的了,如有冒犯敬请谅解。
今天时间有限,我就在这儿首先介绍一下AF是什么,毕竟地里的各位对于这个称谓或许比较陌生。AF翻译成中文的话,说得客气点叫客座教授,说得直白点就是代课老师,一般指在大学里只负责part-time教课,完全不负责科研的群体。学生或许出于尊敬或者单纯不想动脑子记你的名字叫你一声Professor,但自己可千万别飘,拿大学教授自居了。网络上,无论是中文世界还是英文世界对于AF的讨论其实都很少,仅有的几个讨论话题都集中在Adjunct很穷这件事上。AF待遇差这件事是真的,具体的我之后会提到。但我认为对它的讨论should be more than that,因为事实上,在美国大学里,尤其是非研究型大学里。根据我谷歌随手搜出来的数据,现在在美国大学的教职人员,或者说能被称为“大学教授”的这批人,70%是由AF组成的。也就是说在美国大学讲台上给大家上课的,有70%的是兼职。当然我相信在研究型大学里这种情况少一些,尤其是高级的课程,主要还是正式的tenure-track教授负责的,再不济也是全职的teaching professor。但在大家所忽略的teaching school以及community college这个级别的学校里,AF是绝对的主力。
然而和AF的无处不在形成鲜明对比的是其收入。我不知道为什么谷歌搜出来的说法是Adjunct普遍在美国一年能挣12万美元,这显然是错误的,比诸多助理教授的起始工资都高了。绝大部分Adjunct的工资是按照课程来计算的,即教一门一学期的课给一定数额的钱。对于一门3学分的课,不同的学科和学校之间差距很大,从2000多到1万多的都有。我听说过的最壕的大概是我们地里的大红人NEU,据我一个同事说,CS系能给拥有PhD学位的Adjunct开出18K一门课的工资,是我等x丝想都别想的。绝大部分学校,我估计开一门CS的课能给个5000-8000左右。文科或者纯理科比较惨,一般3000出头是很常见的,哪怕在高消费地区。所以说如果是把Adjunct当成全职工作来做的话,待遇确实很差,一年满打满算三学期,一学期撑死了教三节课吧,按照一门课6000算,一年年薪只有5万出头,这在西雅图这种地方根本活不下去。然而如果是在小地方的话情况只会更糟,因为人少,学校少,收入只会比这低更多。所以AF作为一份全职工作的收入,无论在哪里,肯定都是属于低保户水平了。而且真的把AF当全职来做的,往往要同时奔波好几个学校,像赶场一样,生活压力就更大了。
AF一种比较常规的招聘流程是,学校的招聘平台上长期发布招AF的信息,搜集大家的简历但并不立刻发面试,维持一个candidate pool。然后系主任从前一个学期开始甚至更久之前规划下学期开哪些课,看哪些课必须开但缺人来教,去pool里挑人,一个个打电话问过去,遇到合适的就发面试。面试流程各个学校都不一样,最常见的大概就是让应聘人当场讲半节课,也有的学校不需要讲课,就直接问问你基本的知识,搞个简单的算法题或者OOD做做,看看你口头表达能力,临场应变以及和台下互动的能力如何。另一种流程,也是我个人遇到的case是,出于各种原因,学校到快开学前几个礼拜才开始公开招聘,然后恰好被我看到了,便邀请我去面试,然后急吼吼地就在啥都没准备的前提下拉上讲台讲课了。我说了这么多,是想说明AF是按照课程来招聘的,这工作并不那么容易找。有些学校看起来在招人,但只是在build candidate pool,或者他们确实急着要人,但你之前没有这门课需要的工作经验或者teaching经验,那可能也不会要你。而且就算真的面上了,作为副业,我认为其在金钱上的回报也不算很高的,顶多只是稳定地一个学期(10-14个星期左右)能赚个小几千。和其辛苦程度比,尤其是初期,我认为是得不偿失的,具体我下面会提到。但好处是,一旦要你了,他们一般会期待和你建立长期的合作关系,因为实话说学校尤其是CS系,招个合适的AF也不容易。只要你不是教得太烂,所有学生都给你差评,学校是希望你能一直教下去的,所以算是一份比较稳定的工作。以及招人的bar并不高,一般要求有master学位,然后业界有相关经验就可以。经验足够多的,你是bachelor毕业也无所谓。
先说这么多,下一段讲讲自己的经历。
没想到反响这么热烈,感谢大家的热情讨论和提问,也给了我接下去行文的一些思路,以及大家的留言我也都会看并且回复。今天继续,我分享一下我做AF的具体经历,想到啥写啥,如果觉得我写得乱敬请谅解。
目前为止我在家里附近的两个名不见经传的学校里,已经做了2年。这两个学校的教学时间以年为单位错开,简称学校A和B。学校B是fall term和winter term,A则是spring term,所以时间上没有重合,也正好留出西雅图最美的夏季给自己和家人更多在一起的时光。上面有人问教课和工作的时间会不会冲突,在我的case里两所学校的上课时间都是晚上,也很庆幸我不在字节这样的公司,没有太多晚上开会的需求,所以时间上并没有问题。A是一所公立社区学校,B是私立学校,提到这个是因为你们会发现,教学体验会因为公立和私立的区别,导致一定的不同。
先谈谈面试的过程吧。我每学期教一门课,所以在A和B分别教了1门和2门,教授的都是Database。我是从A校上岸的,那时候刚拿了卡,单纯想做点副业以不浪费这个身份。不怕大家喷,很久前我在国内的机构做过一段时间留学咨询,感觉自己挺enjoy这种为别人解惑的过程,加上以前挺喜欢中国合伙人这部电影,所以当老师一直在我的兴趣点里。不过现在我喜欢这份工作有其他更重要的原因,我会在下一段分享。但总而言之,这份兴趣使我去搜索相关的职位,在看到离家2个block的A校在招人时便欣然投出简历。申请过程和普通码农工作不一样的地方是,除了简历,还要提交cover letter,teaching philosophy和diversity statement,以及需要3个推荐信。其他都好胡诌,但推荐信确实是个问题,最后我随便写了几个不存在的邮箱交了上去。所以他们真让我去面试时,我还挺意外的😂面试过程很简单,就是问一问我的经历,随便让我写了个OOD,然后问我教Database有没有什么问题,过一个月开学。过了大概三天后,就通知我决定move forward了。A校教了一学期后就到了夏天,闲了一段时间后觉得教课这件事workload并不算很大,自己其实可以再多干点,于是找找别的机会,这次找到了离家开车10分钟可达的B校的一个职位,点名要求教Database。由于这次我有教学经验了,所以投简历也自信了很多,同样没给reference letter。投上去一周没动静后,我写了封邮件给系主任,重新elaborate了一下自己的教学经验和工作经历,一天后便收到回复让我去面试。面试很直白,模拟上课,直接挑一节课给他们讲一个小时,反馈还可以,也是过了三天通知我move forward。去年只在两个学校分别上了一节课,今年大概是因为去年在B校反响还行,便让我从明年开始多教一节Advanced Database。
具体到给钱,A校给我开的工资是4600+,但因为我教的是STEM,当年有个特殊津贴,所以最后税后收入5000不到,以及提供一台工作电脑。今年还算给我涨了工资,直接到了5000,但因为没了津贴,所以收入和去年持平。B校给我开的工资是7500+,以及第一年有个500的sign on。今年可能因为注册这门课的学生少了,本来还降到了7200,和学校argue后又给我涨回了原来的数额。我估计明年那节新课也应该是差不多的水平,所以在西雅图地区教CS课能拿多少,我想大家基本也心里有数了。之前还有个离家30分钟的学校邀请我去讲课,但因为太远就没去,也是公立学校,估计给钱和A校差不多。值得一提的是,A校一周一次课,一次3小时,一共10周。B校一周两次课,一次1小时20分钟,一共15周。
另一个大家比较关心的是准备课件的过程,这也确实是我遇到的一个挑战。比如A校,那是我第一次上课,所以自从我收到A校的offer后就开始准备PPT。当我好不容易准备了4节课,把基本的SQL句法准备好后,才发现他们要求我教的课是Database Design,并且之前学生已经花了一学期学过了SQL Query。啥都别说了,重新准备吧。好在校方给我分享了前一年老师留下的PPT,实话说质量不怎么样,40多页的PPT,每一页就几句很浅显的定理一样的句子,也不知道哥们儿是怎么撑满3小时的。于是我只能借鉴他的标题和部分内容,以及他列出的参考书目,自己重新做了PPT,基本是边上课边做,周日做完了周三立刻就讲。然后今年重新看的时候,实在看不下去其中几章的质量(心疼我去年的学生),于是大改了其中50%的PPT。B校的Database课还不太一样,是基础的Intro to Database,也就是要从头开始教SQL。这次给的PPT质量更加惨不忍睹,至少我是看不懂这玩意怎么讲,于是不得不几乎完全重做。还记得我刚才提到的准备了4节SQL语法的课吗?这次就正好一点不浪费地用上了,再结合一点A校的东西,把整个syllabus也更新了一下。和很多在学术界的老师不同,我作为一个后端程序猿是真的要用各种不同的数据库或者说数据中间件来实现各式各样的feature,而所谓的后端,说白了就是各种数据加工传递的过程,所以在准备PPT的时候,我有近乎无穷的思路和实践经验可以帮助我决定讲什么,并且几乎不依赖课本,因为大部分讲database的课本都太过于old school了,像Relational Algebra,Normalization这种纯理论的东西就能讲个好几章,而事实上我的大部分学生这辈子都用不上,所以我就可以只用一节课讲个大概,而多讲一些我认为更有用的东西。其实相较于PPT,更让我头疼的是设计作业。目前我的作业一部分是我以前学校里的coding作业简化而来(因为我自己以前做的一塌糊涂,所以难做的部分我也不知道怎么做,只能挑我看得懂的部分来用😂),另一部分就是根据我的PPT出take home quiz。至今为止,我设计出来的作业在我眼里还是不合格的。等我所有PPT都更新到满意之后,我或许会多花点时间设计出更好的作业。
至于上课的过程倒是乏善可陈。基本就是我讲,学生听。Database除了前两节讲SQL的时候能当场跑个MySQL Workbench来demo一下外,其他基本都是理论,没什么可以和学生有很多互动的地方。传说中东亚学生的课堂一片寂静,西方学生的课堂上师生热切互动的场景并没有发生,A校和B校都是以本地人为主,我问any question的时候能得到的也只有沉默的回应😂。office hour因为个人原因只能定在周末晚上,整个学期没有一个人来过。所以今年我直接改成on demand + by appointment,他们课后来找我的确实越来越多了,无论是问作业问题的,还是问就业或者其他技术问题的,我都尽可能一一解答。我觉得不管你课上得多精彩,大多数学生在意的其实还是能在这门课上拿多少分。而我对作业的态度很明确,那就是没有要求。你要晚交?可以。你想抄袭?随便,别被我发现就行。你做错了?只要思路大体对,我基本给全分。一开始我会担心我作业出得又简单,批得又松,会不会大家分数太高。而事实证明我想多了,每个班上总有几个人,要么从来不交作业,学期最后一星期来求我,要么交了但有一半空着。能认认真真地以一定质量做完全部作业的,占比不超过班里的50%,所以最后我给分的分布也很好看。我知道有些全职教授对于作业有千奇百怪的规定,但对于我们AF来讲,就是来满足一下爱好顺便赚个钱,不是迫不得已是真不想跟学生有太多牵连,把学生挂了对我们麻烦很大,要写书面报告,层层上传到教务处,可能还要接受质询。所以如果看我贴的有在校学生的话,你在学校遇到AF教课,只要你态度好点,作业认真点写,不会就问,只要让我们看到你的effort了,拿个A根本不是问题。学期结束后,两所学校都有学生给老师打分的环节。很少有学生给我打分,给我打分的基本也是大体满意,可能因为我不为难他们吧。
最后讲讲学校的一些政策对我们的影响,而这里就是A校和B校最大的不同。A校基本就是hire到人来讲课就算完成任务了,只要分数分布正常,期末测评不差就行,至于我教什么,怎么教,他们都很随意。有时候我需要出差,就提前把课录好给学生,也从来没人有反对意见。而B校就严格多了,前两个星期要track学生是否有足够的activity,不然视为drop。想要请假很烦,虽然最后会批,但这个case要escalate到学校委员会。我今年请假了三个星期,虽然都有和系主任提前打招呼并且每次课都有录好,但还是受到警告说以后不能这样。对于教学内容更是层层把控,虽然不限制我们教什么,但改动syllabus是需要经过curriculum委员会批准的,明天我就要参加一个关于我这两门课syllabus更新的审查会,确定我的更新是合理的。两个学校都要求onsite教课,也要求学生到场,但A校我偶尔网上上课,或者我在onsite并且live授课以及recording,以保证不想来的同学也能听到,一点问题都没有。而B校则也要层层审查和批准,最后批准了我录课的请求。两校学生其实都没区别,比起onsite他们也都普遍更喜欢在家听课,起码喜欢有这样的选择权,但B校显然更严格。总而言之,A校钱少事少,B校钱多(一丢丢)事多。
总而言之,对于AF这份副业,我认为备课是一个比较耗时的过程,尤其是我刚开始上这几节课没多久。所用的时间加起来,粗略算下来,至少是我主业工作的一半甚至更多,并且给钱也显然远少于我的主业。而且还有一点,我教的三门课好歹都是database相关的,学校也算给了之前的课件作为辅助,所以备课其实还可以互相借鉴,如果你同时上几门完全不同的课,备课会成倍地痛苦。如果并不enjoy这份工作本身,单纯为了多赚点钱,做AF我认为是有点得不偿失的,不如多刷两道题跳槽,这多出的薪水可远远不止这一两万。或者另寻他路,找找其他副业。下个贴我会从主观上谈谈自己的感想。
补充内容 (2024-10-23 08:22 +08:00):
有一点我忘说了,在美国从小学到高中,当老师都需要取得相应的资格证,然而大学老师不用。这和中国应该是一样的。
楼主
donnice
: 目前为止我在家里附近的两个名不见经传的学校里,已经做了2年。这两个学校的教学时间以年为单位错开,简称学校A和B。学校B是fall term和winter term,A则是spring term,所以时间上没有重合,也正好留出西雅图最美的夏季给自己和家人更多在一起的时光。上面有人问教课和工作的时间会不会冲突,在我的case里两所学校的上课时间都是晚上,也很庆幸我不在字节这样的公司,没有太多晚上开会的需求,所以时间上并没有问题。A是一所公立社区学校,B是私立学校,提到这个是因为你们会发现,教学体验会因为公立和私立的区别,导致一定的不同。
先谈谈面试的过程吧。我每学期教一门课,所以在A和B分别教了1门和2门,教授的都是Database。我是从A校上岸的,那时候刚拿了卡,单纯想做点副业以不浪费这个身份。不怕大家喷,很久前我在国内的机构做过一段时间留学咨询,感觉自己挺enjoy这种为别人解惑的过程,加上以前挺喜欢中国合伙人这部电影,所以当老师一直在我的兴趣点里。不过现在我喜欢这份工作有其他更重要的原因,我会在下一段分享。但总而言之,这份兴趣使我去搜索相关的职位,在看到离家2个block的A校在招人时便欣然投出简历。申请过程和普通码农工作不一样的地方是,除了简历,还要提交cover letter,teaching philosophy和diversity statement,以及需要3个推荐信。其他都好胡诌,但推荐信确实是个问题,最后我随便写了几个不存在的邮箱交了上去。所以他们真让我去面试时,我还挺意外的😂面试过程很简单,就是问一问我的经历,随便让我写了个OOD,然后问我教Database有没有什么问题,过一个月开学。过了大概三天后,就通知我决定move forward了。A校教了一学期后就到了夏天,闲了一段时间后觉得教课这件事workload并不算很大,自己其实可以再多干点,于是找找别的机会,这次找到了离家开车10分钟可达的B校的一个职位,点名要求教Database。由于这次我有教学经验了,所以投简历也自信了很多,同样没给reference letter。投上去一周没动静后,我写了封邮件给系主任,重新elaborate了一下自己的教学经验和工作经历,一天后便收到回复让我去面试。面试很直白,模拟上课,直接挑一节课给他们讲一个小时,反馈还可以,也是过了三天通知我move forward。去年只在两个学校分别上了一节课,今年大概是因为去年在B校反响还行,便让我从明年开始多教一节Advanced Database。
具体到给钱,A校给我开的工资是4600+,但因为我教的是STEM,当年有个特殊津贴,所以最后税后收入5000不到,以及提供一台工作电脑。今年还算给我涨了工资,直接到了5000,但因为没了津贴,所以收入和去年持平。B校给我开的工资是7500+,以及第一年有个500的sign on。今年可能因为注册这门课的学生少了,本来还降到了7200,和学校argue后又给我涨回了原来的数额。我估计明年那节新课也应该是差不多的水平,所以在西雅图地区教CS课能拿多少,我想大家基本也心里有数了。之前还有个离家30分钟的学校邀请我去讲课,但因为太远就没去,也是公立学校,估计给钱和A校差不多。值得一提的是,A校一周一次课,一次3小时,一共10周。B校一周两次课,一次1小时20分钟,一共15周。
另一个大家比较关心的是准备课件的过程,这也确实是我遇到的一个挑战。比如A校,那是我第一次上课,所以自从我收到A校的offer后就开始准备PPT。当我好不容易准备了4节课,把基本的SQL句法准备好后,才发现他们要求我教的课是Database Design,并且之前学生已经花了一学期学过了SQL Query。啥都别说了,重新准备吧。好在校方给我分享了前一年老师留下的PPT,实话说质量不怎么样,40多页的PPT,每一页就几句很浅显的定理一样的句子,也不知道哥们儿是怎么撑满3小时的。于是我只能借鉴他的标题和部分内容,以及他列出的参考书目,自己重新做了PPT,基本是边上课边做,周日做完了周三立刻就讲。然后今年重新看的时候,实在看不下去其中几章的质量(心疼我去年的学生),于是大改了其中50%的PPT。B校的Database课还不太一样,是基础的Intro to Database,也就是要从头开始教SQL。这次给的PPT质量更加惨不忍睹,至少我是看不懂这玩意怎么讲,于是不得不几乎完全重做。还记得我刚才提到的准备了4节SQL语法的课吗?这次就正好一点不浪费地用上了,再结合一点A校的东西,把整个syllabus也更新了一下。和很多在学术界的老师不同,我作为一个后端程序猿是真的要用各种不同的数据库或者说数据中间件来实现各式各样的feature,而所谓的后端,说白了就是各种数据加工传递的过程,所以在准备PPT的时候,我有近乎无穷的思路和实践经验可以帮助我决定讲什么,并且几乎不依赖课本,因为大部分讲database的课本都太过于old school了,像Relational Algebra,Normalization这种纯理论的东西就能讲个好几章,而事实上我的大部分学生这辈子都用不上,所以我就可以只用一节课讲个大概,而多讲一些我认为更有用的东西。其实相较于PPT,更让我头疼的是设计作业。目前我的作业一部分是我以前学校里的coding作业简化而来(因为我自己以前做的一塌糊涂,所以难做的部分我也不知道怎么做,只能挑我看得懂的部分来用😂),另一部分就是根据我的PPT出take home quiz。至今为止,我设计出来的作业在我眼里还是不合格的。等我所有PPT都更新到满意之后,我或许会多花点时间设计出更好的作业。
至于上课的过程倒是乏善可陈。基本就是我讲,学生听。Database除了前两节讲SQL的时候能当场跑个MySQL Workbench来demo一下外,其他基本都是理论,没什么可以和学生有很多互动的地方。传说中东亚学生的课堂一片寂静,西方学生的课堂上师生热切互动的场景并没有发生,A校和B校都是以本地人为主,我问any question的时候能得到的也只有沉默的回应😂。office hour因为个人原因只能定在周末晚上,整个学期没有一个人来过。所以今年我直接改成on demand + by appointment,他们课后来找我的确实越来越多了,无论是问作业问题的,还是问就业或者其他技术问题的,我都尽可能一一解答。我觉得不管你课上得多精彩,大多数学生在意的其实还是能在这门课上拿多少分。而我对作业的态度很明确,那就是没有要求。你要晚交?可以。你想抄袭?随便,别被我发现就行。你做错了?只要思路大体对,我基本给全分。一开始我会担心我作业出得又简单,批得又松,会不会大家分数太高。而事实证明我想多了,每个班上总有几个人,要么从来不交作业,学期最后一星期来求我,要么交了但有一半空着。能认认真真地以一定质量做完全部作业的,占比不超过班里的50%,所以最后我给分的分布也很好看。我知道有些全职教授对于作业有千奇百怪的规定,但对于我们AF来讲,就是来满足一下爱好顺便赚个钱,不是迫不得已是真不想跟学生有太多牵连,把学生挂了对我们麻烦很大,要写书面报告,层层上传到教务处,可能还要接受质询。所以如果看我贴的有在校学生的话,你在学校遇到AF教课,只要你态度好点,作业认真点写,不会就问,只要让我们看到你的effort了,拿个A根本不是问题。学期结束后,两所学校都有学生给老师打分的环节。很少有学生给我打分,给我打分的基本也是大体满意,可能因为我不为难他们吧。
最后讲讲学校的一些政策对我们的影响,而这里就是A校和B校最大的不同。A校基本就是hire到人来讲课就算完成任务了,只要分数分布正常,期末测评不差就行,至于我教什么,怎么教,他们都很随意。有时候我需要出差,就提前把课录好给学生,也从来没人有反对意见。而B校就严格多了,前两个星期要track学生是否有足够的activity,不然视为drop。想要请假很烦,虽然最后会批,但这个case要escalate到学校委员会。我今年请假了三个星期,虽然都有和系主任提前打招呼并且每次课都有录好,但还是受到警告说以后不能这样。对于教学内容更是层层把控,虽然不限制我们教什么,但改动syllabus是需要经过curriculum委员会批准的,明天我就要参加一个关于我这两门课syllabus更新的审查会,确定我的更新是合理的。两个学校都要求onsite教课,也要求学生到场,但A校我偶尔网上上课,或者我在onsite并且live授课以及recording,以保证不想来的同学也能听到,一点问题都没有。而B校则也要层层审查和批准,最后批准了我录课的请求。两校学生其实都没区别,比起onsite他们也都普遍更喜欢在家听课,起码喜欢有这样的选择权,但B校显然更严格。总而言之,A校钱少事少,B校钱多(一丢丢)事多。
总而言之,对于AF这份副业,我认为备课是一个比较耗时的过程,尤其是我刚开始上这几节课没多久。所用的时间加起来,粗略算下来,至少是我主业工作的一半甚至更多,并且给钱也显然远少于我的主业。而且还有一点,我教的三门课好歹都是database相关的,学校也算给了之前的课件作为辅助,所以备课其实还可以互相借鉴,如果你同时上几门完全不同的课,备课会成倍地痛苦。如果并不enjoy这份工作本身,单纯为了多赚点钱,做AF我认为是有点得不偿失的,不如多刷两道题跳槽,这多出的薪水可远远不止这一两万。或者另寻他路,找找其他副业。下个贴我会从主观上谈谈自己的感想。
补充内容 (2024-10-23 08:22 +08:00):
有一点我忘说了,在美国从小学到高中,当老师都需要取得相应的资格证,然而大学老师不用。这和中国应该是一样的。
最后再谈谈自己目前为止的体会吧,这部分比较主观,可参考性可能不高,不喜勿喷。
上面也有不少朋友提到,虽然赚钱不多,但对于把教书当作爱好的人来说,AF作为副业也挺适合。这个结论之于我,应该不能算错,但确实不那么准确。如上面所提到,出于各种原因我对传道授业这件事是有兴趣成分在里面的,也是这份兴趣促使我找到了A校的岗位。但现在两年多过去了,不能说我已经失去了对教书的兴趣,但能支撑我走到现在,并且在可预见的未来还想继续走很长一段时间的,肯定不是所谓的兴趣。并且AF给得工资也实在不算多,钱肯定也不是主要因素。
对我来说最重要的因素,其实是对我个人业务水平的提升。是的,当AF,或者说当数据库AF,对我作为一个后端和infra程序员的技术实力来说,是有很明显的加强的。在我看来,众多的CS基础课里,数据库可以是一门非常综合且实用的课。如果是20年前教DB,那大概是只能教教RDBMS,Relational理论,Table的设计,实用一点的教一下Oracle DBA基础,等等。但现在这个所谓的移动互联网时代,万物皆数据,一切业务逻辑的底层都围绕着数据的传递,加工,存储和应用展开,而各式各样的数据库和数据中间件在其中扮演着最核心的角色。不说别的,就说各种面试的所谓系统设计,绝大部分的本质就是设计一个数据系统来满足相关业务的需求。不止如此,数据库作为一个系统的终端,几乎可以和计算机的任何其他科目产生关联,OS,Network,算法,信息安全,机器学习,甚至是Web开发等等,都是相关的。加上现在数据库五花八门,广义上的数据库几乎囊括了系统设计中的任何常客,从最传统的RDBMS,到各种NoSQL诸如KV/Document DB/Wide Column/Graph/Time Series等等,到Spark/Flink/MQ等数据中间件,再到云上的Data Warehouse/Data Lake/Object Storage,甚至现在大火的GenAI系统中也有Vector DB作为关键的一环,之前的网红比特币背后也少不了以Blockchain为基础的去中心化数据库的支持。所以要讲好数据库,必然要求讲授者有极其宽广的知识面和一定深度的实践经验。这两年为了准备课件,我翻遍了MySQL高性能设计,DDIA等经典书目,也反复研读了BigTable,Flink,Cassandra等经典paper,不敢说都读懂了,但确实了解了很多设计相关的新知识,并且这些材料真心常看常新,每次都能读到点新花样。同时我的本职工作是做GenAI Solution,因此我也加入了Retrieval Argumented Generation,Text-to-SQL等最前沿的知识,不仅给我的课件增添了一些亮点,也对自己的工作从理论方面上有了更深入的认识。以前在Gatech读书的时候也有不少读论文的环节,但我要么跳过了,要么读个大概。现在要写PPT教别人了,一份PPT的内容要撑够两节课,所以必然不能再浮于表面,而是要深入想明白很多细节才行了,不然PPT的内容无法自圆其说。这里我真心推荐用ChatGPT和NotebookLM看paper,能帮你总结,不懂就问,大大节省了很多内耗的时间。所谓教学相长,为了教会别人,我自己得先学一遍学懂了才行。当且仅当你能用清晰的语言教授一项知识,才能说明你真的懂了这项知识。同时我也比平时更关注一些技术blog,看到和数据库有关的好的内容便会看一看,合适的就想想怎么加到我的PPT里。对于现在的我来说,面试系统设计,至少在基础知识这块儿应该说是不缺啥了,每次上课就当是在重新复习了。实话说,我教的内容对本科生来说是有点超纲了。但再说得露骨一点,我是为了自己学,顺便通过教授来验证自己的学习成果。我当然尽我所能把这些知识讲得通俗易懂,但至于学生是否听懂了,我其实并不是特别在乎。
另一个重要因素则是个人英文表达能力的提升。虽然程序员做到L5这个级别,基本上是不太可能一天到晚只写码不说话的,但就靠这点开会说的英文,是远远达不到让自己的口语能到流利表达的水准的,更何况开会讲的往往都是自己非常熟悉的一个小领域里的内容,翻来覆去也就这么几个词。但上课则完全不一样,自己要在运用一些平时不怎么熟悉的知识,当着一群人的面独自讲一个多小时到三个小时,还要适当地辅以写黑板来增强自己的表达,并且要随时面对可能到来的卡壳而做到灵活变通,这对我本人是个很好的锻炼。我以前刚会讲职场英语的时候有个致命的缺点,就是太过啰嗦,一句话能讲很久而辞不达意。现在我虽然远没到什么native水平,但至少收放自如,能用一个比较完整的句子,在合理的长度内,清晰地表达自己的核心观点了。我个人觉得,自从我读过MBA,加上开始教书以来,我的英文表达能力确实上了一个新的台阶。其实表达的核心不在于英文,还是在于对于自己所讲的话题的把握程度。相信随着我对数据库这个领域的继续深入学习,我的表达还能有进步。
还有一个因素则是多一个技能,多一份失业保障。这几年程序员失业潮到来,每个人都人心惶惶,没有人敢说自己是安全的。而且很明显,我这么划水的一个人,今天不知道明天的。虽然我们都知道失业随时可能降临到自己头上,但绝大多数人并不知道自己真的丢掉工作了,IT行业又不再景气,自己能去做什么。我给自己的答案就是当讲师,我所在的两所学校的CS系都常年有在招聘全职的讲师,高端一点的,西雅图附近的UW Bothell的CS系也在招全职Associate Teaching Professor(不需要PhD!同样的岗位UW Seattle就需要。),工资不高但好歹过了六位数。我想拥有比较丰富的业界和教育经验的我,在申请此类岗位时应该会比一般人更有把握。当然,讲师这个职位选择面也很窄,但怎么说呢,有总比没有好嘛!
最后一个很小但确实存在的因素,就是暗暗希望为CS教育的进步出一份小小的力。我们大家都是读过大学的,应该深知就软件工程教育而言,除了四大名校的个别课,绝大多数大学CS系教授的内容都相当过时和艰深,和实际应用之间的联系相当微弱,要么就是流于表面,教大家用各式各样的技术,走一遍各种quick start 101,却没有系统地让学生了解为什么要学习这个技术,在什么场景下该用什么,如何做trade off。不知道现在是否好点,但我10年前在密歇根学数据库的时候,被活生生地上成一门数学+算法课。而我看我B校的一门Big Data System课,就是教大家在GCP上,Hadoop搭一搭,Spark搭一搭,Pub/Sub搭一搭,再整个toy project,却没有讲清楚云计算和分布式系统的基本理念,而这才是最重要的。所以我希望能通过我的课,影响一小部分学生,让他们在将来工作、准备面试的时候,甚至毕业多年后,遇到一些技术问题,想起来翻一翻我的PPT,感叹一句“原来当时那个Asian guy说的是这个意思”。那也不枉我的一番心血了。
总而言之,因为以上种种原因,我对AF这份工作还是乐在其中的。虽然不太可能真的转为全职(真的转为全职估计就要为工资发愁了),但希望有机会的话我可以多做一段时间,并继续从中获益。
以后有什么新的想法我会不定时更新,有问题大家随便问!
backhometown
: 上面也有不少朋友提到,虽然赚钱不多,但对于把教书当作爱好的人来说,AF作为副业也挺适合。这个结论之于我,应该不能算错,但确实不那么准确。如上面所提到,出于各种原因我对传道授业这件事是有兴趣成分在里面的,也是这份兴趣促使我找到了A校的岗位。但现在两年多过去了,不能说我已经失去了对教书的兴趣,但能支撑我走到现在,并且在可预见的未来还想继续走很长一段时间的,肯定不是所谓的兴趣。并且AF给得工资也实在不算多,钱肯定也不是主要因素。
对我来说最重要的因素,其实是对我个人业务水平的提升。是的,当AF,或者说当数据库AF,对我作为一个后端和infra程序员的技术实力来说,是有很明显的加强的。在我看来,众多的CS基础课里,数据库可以是一门非常综合且实用的课。如果是20年前教DB,那大概是只能教教RDBMS,Relational理论,Table的设计,实用一点的教一下Oracle DBA基础,等等。但现在这个所谓的移动互联网时代,万物皆数据,一切业务逻辑的底层都围绕着数据的传递,加工,存储和应用展开,而各式各样的数据库和数据中间件在其中扮演着最核心的角色。不说别的,就说各种面试的所谓系统设计,绝大部分的本质就是设计一个数据系统来满足相关业务的需求。不止如此,数据库作为一个系统的终端,几乎可以和计算机的任何其他科目产生关联,OS,Network,算法,信息安全,机器学习,甚至是Web开发等等,都是相关的。加上现在数据库五花八门,广义上的数据库几乎囊括了系统设计中的任何常客,从最传统的RDBMS,到各种NoSQL诸如KV/Document DB/Wide Column/Graph/Time Series等等,到Spark/Flink/MQ等数据中间件,再到云上的Data Warehouse/Data Lake/Object Storage,甚至现在大火的GenAI系统中也有Vector DB作为关键的一环,之前的网红比特币背后也少不了以Blockchain为基础的去中心化数据库的支持。所以要讲好数据库,必然要求讲授者有极其宽广的知识面和一定深度的实践经验。这两年为了准备课件,我翻遍了MySQL高性能设计,DDIA等经典书目,也反复研读了BigTable,Flink,Cassandra等经典paper,不敢说都读懂了,但确实了解了很多设计相关的新知识,并且这些材料真心常看常新,每次都能读到点新花样。同时我的本职工作是做GenAI Solution,因此我也加入了Retrieval Argumented Generation,Text-to-SQL等最前沿的知识,不仅给我的课件增添了一些亮点,也对自己的工作从理论方面上有了更深入的认识。以前在Gatech读书的时候也有不少读论文的环节,但我要么跳过了,要么读个大概。现在要写PPT教别人了,一份PPT的内容要撑够两节课,所以必然不能再浮于表面,而是要深入想明白很多细节才行了,不然PPT的内容无法自圆其说。这里我真心推荐用ChatGPT和NotebookLM看paper,能帮你总结,不懂就问,大大节省了很多内耗的时间。所谓教学相长,为了教会别人,我自己得先学一遍学懂了才行。当且仅当你能用清晰的语言教授一项知识,才能说明你真的懂了这项知识。同时我也比平时更关注一些技术blog,看到和数据库有关的好的内容便会看一看,合适的就想想怎么加到我的PPT里。对于现在的我来说,面试系统设计,至少在基础知识这块儿应该说是不缺啥了,每次上课就当是在重新复习了。实话说,我教的内容对本科生来说是有点超纲了。但再说得露骨一点,我是为了自己学,顺便通过教授来验证自己的学习成果。我当然尽我所能把这些知识讲得通俗易懂,但至于学生是否听懂了,我其实并不是特别在乎。
另一个重要因素则是个人英文表达能力的提升。虽然程序员做到L5这个级别,基本上是不太可能一天到晚只写码不说话的,但就靠这点开会说的英文,是远远达不到让自己的口语能到流利表达的水准的,更何况开会讲的往往都是自己非常熟悉的一个小领域里的内容,翻来覆去也就这么几个词。但上课则完全不一样,自己要在运用一些平时不怎么熟悉的知识,当着一群人的面独自讲一个多小时到三个小时,还要适当地辅以写黑板来增强自己的表达,并且要随时面对可能到来的卡壳而做到灵活变通,这对我本人是个很好的锻炼。我以前刚会讲职场英语的时候有个致命的缺点,就是太过啰嗦,一句话能讲很久而辞不达意。现在我虽然远没到什么native水平,但至少收放自如,能用一个比较完整的句子,在合理的长度内,清晰地表达自己的核心观点了。我个人觉得,自从我读过MBA,加上开始教书以来,我的英文表达能力确实上了一个新的台阶。其实表达的核心不在于英文,还是在于对于自己所讲的话题的把握程度。相信随着我对数据库这个领域的继续深入学习,我的表达还能有进步。
还有一个因素则是多一个技能,多一份失业保障。这几年程序员失业潮到来,每个人都人心惶惶,没有人敢说自己是安全的。而且很明显,我这么划水的一个人,今天不知道明天的。虽然我们都知道失业随时可能降临到自己头上,但绝大多数人并不知道自己真的丢掉工作了,IT行业又不再景气,自己能去做什么。我给自己的答案就是当讲师,我所在的两所学校的CS系都常年有在招聘全职的讲师,高端一点的,西雅图附近的UW Bothell的CS系也在招全职Associate Teaching Professor(不需要PhD!同样的岗位UW Seattle就需要。),工资不高但好歹过了六位数。我想拥有比较丰富的业界和教育经验的我,在申请此类岗位时应该会比一般人更有把握。当然,讲师这个职位选择面也很窄,但怎么说呢,有总比没有好嘛!
最后一个很小但确实存在的因素,就是暗暗希望为CS教育的进步出一份小小的力。我们大家都是读过大学的,应该深知就软件工程教育而言,除了四大名校的个别课,绝大多数大学CS系教授的内容都相当过时和艰深,和实际应用之间的联系相当微弱,要么就是流于表面,教大家用各式各样的技术,走一遍各种quick start 101,却没有系统地让学生了解为什么要学习这个技术,在什么场景下该用什么,如何做trade off。不知道现在是否好点,但我10年前在密歇根学数据库的时候,被活生生地上成一门数学+算法课。而我看我B校的一门Big Data System课,就是教大家在GCP上,Hadoop搭一搭,Spark搭一搭,Pub/Sub搭一搭,再整个toy project,却没有讲清楚云计算和分布式系统的基本理念,而这才是最重要的。所以我希望能通过我的课,影响一小部分学生,让他们在将来工作、准备面试的时候,甚至毕业多年后,遇到一些技术问题,想起来翻一翻我的PPT,感叹一句“原来当时那个Asian guy说的是这个意思”。那也不枉我的一番心血了。
总而言之,因为以上种种原因,我对AF这份工作还是乐在其中的。虽然不太可能真的转为全职(真的转为全职估计就要为工资发愁了),但希望有机会的话我可以多做一段时间,并继续从中获益。
以后有什么新的想法我会不定时更新,有问题大家随便问!
我也分享数据吧:我,博士,教商科,新冠之前,有两年,一门课2000刀刀,三个学分。低收入地区。我朋友印度人,博士地理,价格差不多,抱怨连汽油费都不够。
匿名用户-1EJI6
:
af的问题是,工资不高,是真的不高。我来猜一个,1学期没有1w, 6-8k?
楼主
donnice
: af的问题是,工资不高,是真的不高。我来猜一个,1学期没有1w, 6-8k?
我写了,我自己的case是5-7K,最牛逼的是我一个同事,在NEU西雅图教一门课,能拿18K
那课比较难?很少有人能上?
否则demand/supply,有cs phd的,这个town还是很多人的
那课比较难?很少有人能上?
否则demand/supply,有cs phd的,这个town还是很多人的
NEU确实很壕,波士顿校区,(我不确定是不是个例,但是)我知道的CS AP是148K/8mo
欢迎大家润欧洲
:
谢谢分享!其实可发兴趣爱好版
衣衫不整的火车
:
谢谢楼主,非常有帮助!收藏了!
匿名用户-GNMKO
:
确实 做得少是因为投入产出的问题 能教书的水平要求也不低
匿名用户-CTOSB
:
问题来了,备课和改作业需要很多时间吗?如果是的话得不偿失啊
backhometown
:
我也分享数据吧:我,博士,教商科,新冠之前,有两年,一门课2000刀刀,三个学分。低收入地区。我朋友印度人,博士地理,价格差不多,抱怨连汽油费都不够。
backhometown
: 问题来了,备课和改作业需要很多时间吗?如果是的话得不偿失啊
需要很多时间的,我和那个教地理的印度朋友感觉,平均下来就是最低工资。
当然,这个主要是兴趣,而且学生挺尊重的。
我前两年偶尔会去其他学校给guest lecture 时薪750-1000 一般都是2小时 就是1500-2000 当然也有那种熟人邀请不拿钱纯粹为爱发电的
bluefish1991
:
workload大概怎樣呢?是上完課就走,還是要office hour改作業什麽的都有?目測工資不如博士生TA高啊
匿名用户-XBFNT
:
教书跟上班不冲突吗?难道都是选晚班和周末?
匿名用户-H5VU8
:
lz真是好棒!
匿名用户-H5VU8
:
好奇楼主如何做到时间安排的?如果你是全职swe,哪里有时间做AF
匿名用户-DXBQP
:
如果可以remote挺好
zz386
:
报个dp, 非东西两岸,类似社区大学,一门课 (每周一节,一节4个小时,连上10周左右),税前1500刀。
delta42
:
感谢分享。不只是收入,爱教课的话当AF还是挺开心的。也可以算是一个赚钱的hobby。
weihshen
:
mark一下
楼主
donnice
:
没想到反响这么热烈,感谢大家的热情讨论和提问,也给了我接下去行文的一些思路,以及大家的留言我也都会看并且回复。今天继续,我分享一下我做AF的具体经历,想到啥写啥,如果觉得我写得乱敬请谅解。
目前为止我在家里附近的两个名不见经传的学校里,已经做了2年。这两个学校的教学时间以年为单位错开,简称学校A和B。学校B是fall term和winter term,A则是spring term,所以时间上没有重合,也正好留出西雅图最美的夏季给自己和家人更多在一起的时光。上面有人问教课和工作的时间会不会冲突,在我的case里两所学校的上课时间都是晚上,也很庆幸我不在字节这样的公司,没有太多晚上开会的需求,所以时间上并没有问题。A是一所公立社区学校,B是私立学校,提到这个是因为你们会发现,教学体验会因为公立和私立的区别,导致一定的不同。
先谈谈面试的过程吧。我每学期教一门课,所以在A和B分别教了1门和2门,教授的都是Database。我是从A校上岸的,那时候刚拿了卡,单纯想做点副业以不浪费这个身份。不怕大家喷,很久前我在国内的机构做过一段时间留学咨询,感觉自己挺enjoy这种为别人解惑的过程,加上以前挺喜欢中国合伙人这部电影,所以当老师一直在我的兴趣点里。不过现在我喜欢这份工作有其他更重要的原因,我会在下一段分享。但总而言之,这份兴趣使我去搜索相关的职位,在看到离家2个block的A校在招人时便欣然投出简历。申请过程和普通码农工作不一样的地方是,除了简历,还要提交cover letter,teaching philosophy和diversity statement,以及需要3个推荐信。其他都好胡诌,但推荐信确实是个问题,最后我随便写了几个不存在的邮箱交了上去。所以他们真让我去面试时,我还挺意外的😂面试过程很简单,就是问一问我的经历,随便让我写了个OOD,然后问我教Database有没有什么问题,过一个月开学。过了大概三天后,就通知我决定move forward了。A校教了一学期后就到了夏天,闲了一段时间后觉得教课这件事workload并不算很大,自己其实可以再多干点,于是找找别的机会,这次找到了离家开车10分钟可达的B校的一个职位,点名要求教Database。由于这次我有教学经验了,所以投简历也自信了很多,同样没给reference letter。投上去一周没动静后,我写了封邮件给系主任,重新elaborate了一下自己的教学经验和工作经历,一天后便收到回复让我去面试。面试很直白,模拟上课,直接挑一节课给他们讲一个小时,反馈还可以,也是过了三天通知我move forward。去年只在两个学校分别上了一节课,今年大概是因为去年在B校反响还行,便让我从明年开始多教一节Advanced Database。
具体到给钱,A校给我开的工资是4600+,但因为我教的是STEM,当年有个特殊津贴,所以最后税后收入5000不到,以及提供一台工作电脑。今年还算给我涨了工资,直接到了5000,但因为没了津贴,所以收入和去年持平。B校给我开的工资是7500+,以及第一年有个500的sign on。今年可能因为注册这门课的学生少了,本来还降到了7200,和学校argue后又给我涨回了原来的数额。我估计明年那节新课也应该是差不多的水平,所以在西雅图地区教CS课能拿多少,我想大家基本也心里有数了。之前还有个离家30分钟的学校邀请我去讲课,但因为太远就没去,也是公立学校,估计给钱和A校差不多。值得一提的是,A校一周一次课,一次3小时,一共10周。B校一周两次课,一次1小时20分钟,一共15周。
另一个大家比较关心的是准备课件的过程,这也确实是我遇到的一个挑战。比如A校,那是我第一次上课,所以自从我收到A校的offer后就开始准备PPT。当我好不容易准备了4节课,把基本的SQL句法准备好后,才发现他们要求我教的课是Database Design,并且之前学生已经花了一学期学过了SQL Query。啥都别说了,重新准备吧。好在校方给我分享了前一年老师留下的PPT,实话说质量不怎么样,40多页的PPT,每一页就几句很浅显的定理一样的句子,也不知道哥们儿是怎么撑满3小时的。于是我只能借鉴他的标题和部分内容,以及他列出的参考书目,自己重新做了PPT,基本是边上课边做,周日做完了周三立刻就讲。然后今年重新看的时候,实在看不下去其中几章的质量(心疼我去年的学生),于是大改了其中50%的PPT。B校的Database课还不太一样,是基础的Intro to Database,也就是要从头开始教SQL。这次给的PPT质量更加惨不忍睹,至少我是看不懂这玩意怎么讲,于是不得不几乎完全重做。还记得我刚才提到的准备了4节SQL语法的课吗?这次就正好一点不浪费地用上了,再结合一点A校的东西,把整个syllabus也更新了一下。和很多在学术界的老师不同,我作为一个后端程序猿是真的要用各种不同的数据库或者说数据中间件来实现各式各样的feature,而所谓的后端,说白了就是各种数据加工传递的过程,所以在准备PPT的时候,我有近乎无穷的思路和实践经验可以帮助我决定讲什么,并且几乎不依赖课本,因为大部分讲database的课本都太过于old school了,像Relational Algebra,Normalization这种纯理论的东西就能讲个好几章,而事实上我的大部分学生这辈子都用不上,所以我就可以只用一节课讲个大概,而多讲一些我认为更有用的东西。其实相较于PPT,更让我头疼的是设计作业。目前我的作业一部分是我以前学校里的coding作业简化而来(因为我自己以前做的一塌糊涂,所以难做的部分我也不知道怎么做,只能挑我看得懂的部分来用😂),另一部分就是根据我的PPT出take home quiz。至今为止,我设计出来的作业在我眼里还是不合格的。等我所有PPT都更新到满意之后,我或许会多花点时间设计出更好的作业。
至于上课的过程倒是乏善可陈。基本就是我讲,学生听。Database除了前两节讲SQL的时候能当场跑个MySQL Workbench来demo一下外,其他基本都是理论,没什么可以和学生有很多互动的地方。传说中东亚学生的课堂一片寂静,西方学生的课堂上师生热切互动的场景并没有发生,A校和B校都是以本地人为主,我问any question的时候能得到的也只有沉默的回应😂。office hour因为个人原因只能定在周末晚上,整个学期没有一个人来过。所以今年我直接改成on demand + by appointment,他们课后来找我的确实越来越多了,无论是问作业问题的,还是问就业或者其他技术问题的,我都尽可能一一解答。我觉得不管你课上得多精彩,大多数学生在意的其实还是能在这门课上拿多少分。而我对作业的态度很明确,那就是没有要求。你要晚交?可以。你想抄袭?随便,别被我发现就行。你做错了?只要思路大体对,我基本给全分。一开始我会担心我作业出得又简单,批得又松,会不会大家分数太高。而事实证明我想多了,每个班上总有几个人,要么从来不交作业,学期最后一星期来求我,要么交了但有一半空着。能认认真真地以一定质量做完全部作业的,占比不超过班里的50%,所以最后我给分的分布也很好看。我知道有些全职教授对于作业有千奇百怪的规定,但对于我们AF来讲,就是来满足一下爱好顺便赚个钱,不是迫不得已是真不想跟学生有太多牵连,把学生挂了对我们麻烦很大,要写书面报告,层层上传到教务处,可能还要接受质询。所以如果看我贴的有在校学生的话,你在学校遇到AF教课,只要你态度好点,作业认真点写,不会就问,只要让我们看到你的effort了,拿个A根本不是问题。学期结束后,两所学校都有学生给老师打分的环节。很少有学生给我打分,给我打分的基本也是大体满意,可能因为我不为难他们吧。
最后讲讲学校的一些政策对我们的影响,而这里就是A校和B校最大的不同。A校基本就是hire到人来讲课就算完成任务了,只要分数分布正常,期末测评不差就行,至于我教什么,怎么教,他们都很随意。有时候我需要出差,就提前把课录好给学生,也从来没人有反对意见。而B校就严格多了,前两个星期要track学生是否有足够的activity,不然视为drop。想要请假很烦,虽然最后会批,但这个case要escalate到学校委员会。我今年请假了三个星期,虽然都有和系主任提前打招呼并且每次课都有录好,但还是受到警告说以后不能这样。对于教学内容更是层层把控,虽然不限制我们教什么,但改动syllabus是需要经过curriculum委员会批准的,明天我就要参加一个关于我这两门课syllabus更新的审查会,确定我的更新是合理的。两个学校都要求onsite教课,也要求学生到场,但A校我偶尔网上上课,或者我在onsite并且live授课以及recording,以保证不想来的同学也能听到,一点问题都没有。而B校则也要层层审查和批准,最后批准了我录课的请求。两校学生其实都没区别,比起onsite他们也都普遍更喜欢在家听课,起码喜欢有这样的选择权,但B校显然更严格。总而言之,A校钱少事少,B校钱多(一丢丢)事多。
总而言之,对于AF这份副业,我认为备课是一个比较耗时的过程,尤其是我刚开始上这几节课没多久。所用的时间加起来,粗略算下来,至少是我主业工作的一半甚至更多,并且给钱也显然远少于我的主业。而且还有一点,我教的三门课好歹都是database相关的,学校也算给了之前的课件作为辅助,所以备课其实还可以互相借鉴,如果你同时上几门完全不同的课,备课会成倍地痛苦。如果并不enjoy这份工作本身,单纯为了多赚点钱,做AF我认为是有点得不偿失的,不如多刷两道题跳槽,这多出的薪水可远远不止这一两万。或者另寻他路,找找其他副业。下个贴我会从主观上谈谈自己的感想。
补充内容 (2024-10-23 08:22 +08:00):
有一点我忘说了,在美国从小学到高中,当老师都需要取得相应的资格证,然而大学老师不用。这和中国应该是一样的。
xiyaxia
: 目前为止我在家里附近的两个名不见经传的学校里,已经做了2年。这两个学校的教学时间以年为单位错开,简称学校A和B。学校B是fall term和winter term,A则是spring term,所以时间上没有重合,也正好留出西雅图最美的夏季给自己和家人更多在一起的时光。上面有人问教课和工作的时间会不会冲突,在我的case里两所学校的上课时间都是晚上,也很庆幸我不在字节这样的公司,没有太多晚上开会的需求,所以时间上并没有问题。A是一所公立社区学校,B是私立学校,提到这个是因为你们会发现,教学体验会因为公立和私立的区别,导致一定的不同。
先谈谈面试的过程吧。我每学期教一门课,所以在A和B分别教了1门和2门,教授的都是Database。我是从A校上岸的,那时候刚拿了卡,单纯想做点副业以不浪费这个身份。不怕大家喷,很久前我在国内的机构做过一段时间留学咨询,感觉自己挺enjoy这种为别人解惑的过程,加上以前挺喜欢中国合伙人这部电影,所以当老师一直在我的兴趣点里。不过现在我喜欢这份工作有其他更重要的原因,我会在下一段分享。但总而言之,这份兴趣使我去搜索相关的职位,在看到离家2个block的A校在招人时便欣然投出简历。申请过程和普通码农工作不一样的地方是,除了简历,还要提交cover letter,teaching philosophy和diversity statement,以及需要3个推荐信。其他都好胡诌,但推荐信确实是个问题,最后我随便写了几个不存在的邮箱交了上去。所以他们真让我去面试时,我还挺意外的😂面试过程很简单,就是问一问我的经历,随便让我写了个OOD,然后问我教Database有没有什么问题,过一个月开学。过了大概三天后,就通知我决定move forward了。A校教了一学期后就到了夏天,闲了一段时间后觉得教课这件事workload并不算很大,自己其实可以再多干点,于是找找别的机会,这次找到了离家开车10分钟可达的B校的一个职位,点名要求教Database。由于这次我有教学经验了,所以投简历也自信了很多,同样没给reference letter。投上去一周没动静后,我写了封邮件给系主任,重新elaborate了一下自己的教学经验和工作经历,一天后便收到回复让我去面试。面试很直白,模拟上课,直接挑一节课给他们讲一个小时,反馈还可以,也是过了三天通知我move forward。去年只在两个学校分别上了一节课,今年大概是因为去年在B校反响还行,便让我从明年开始多教一节Advanced Database。
具体到给钱,A校给我开的工资是4600+,但因为我教的是STEM,当年有个特殊津贴,所以最后税后收入5000不到,以及提供一台工作电脑。今年还算给我涨了工资,直接到了5000,但因为没了津贴,所以收入和去年持平。B校给我开的工资是7500+,以及第一年有个500的sign on。今年可能因为注册这门课的学生少了,本来还降到了7200,和学校argue后又给我涨回了原来的数额。我估计明年那节新课也应该是差不多的水平,所以在西雅图地区教CS课能拿多少,我想大家基本也心里有数了。之前还有个离家30分钟的学校邀请我去讲课,但因为太远就没去,也是公立学校,估计给钱和A校差不多。值得一提的是,A校一周一次课,一次3小时,一共10周。B校一周两次课,一次1小时20分钟,一共15周。
另一个大家比较关心的是准备课件的过程,这也确实是我遇到的一个挑战。比如A校,那是我第一次上课,所以自从我收到A校的offer后就开始准备PPT。当我好不容易准备了4节课,把基本的SQL句法准备好后,才发现他们要求我教的课是Database Design,并且之前学生已经花了一学期学过了SQL Query。啥都别说了,重新准备吧。好在校方给我分享了前一年老师留下的PPT,实话说质量不怎么样,40多页的PPT,每一页就几句很浅显的定理一样的句子,也不知道哥们儿是怎么撑满3小时的。于是我只能借鉴他的标题和部分内容,以及他列出的参考书目,自己重新做了PPT,基本是边上课边做,周日做完了周三立刻就讲。然后今年重新看的时候,实在看不下去其中几章的质量(心疼我去年的学生),于是大改了其中50%的PPT。B校的Database课还不太一样,是基础的Intro to Database,也就是要从头开始教SQL。这次给的PPT质量更加惨不忍睹,至少我是看不懂这玩意怎么讲,于是不得不几乎完全重做。还记得我刚才提到的准备了4节SQL语法的课吗?这次就正好一点不浪费地用上了,再结合一点A校的东西,把整个syllabus也更新了一下。和很多在学术界的老师不同,我作为一个后端程序猿是真的要用各种不同的数据库或者说数据中间件来实现各式各样的feature,而所谓的后端,说白了就是各种数据加工传递的过程,所以在准备PPT的时候,我有近乎无穷的思路和实践经验可以帮助我决定讲什么,并且几乎不依赖课本,因为大部分讲database的课本都太过于old school了,像Relational Algebra,Normalization这种纯理论的东西就能讲个好几章,而事实上我的大部分学生这辈子都用不上,所以我就可以只用一节课讲个大概,而多讲一些我认为更有用的东西。其实相较于PPT,更让我头疼的是设计作业。目前我的作业一部分是我以前学校里的coding作业简化而来(因为我自己以前做的一塌糊涂,所以难做的部分我也不知道怎么做,只能挑我看得懂的部分来用😂),另一部分就是根据我的PPT出take home quiz。至今为止,我设计出来的作业在我眼里还是不合格的。等我所有PPT都更新到满意之后,我或许会多花点时间设计出更好的作业。
至于上课的过程倒是乏善可陈。基本就是我讲,学生听。Database除了前两节讲SQL的时候能当场跑个MySQL Workbench来demo一下外,其他基本都是理论,没什么可以和学生有很多互动的地方。传说中东亚学生的课堂一片寂静,西方学生的课堂上师生热切互动的场景并没有发生,A校和B校都是以本地人为主,我问any question的时候能得到的也只有沉默的回应😂。office hour因为个人原因只能定在周末晚上,整个学期没有一个人来过。所以今年我直接改成on demand + by appointment,他们课后来找我的确实越来越多了,无论是问作业问题的,还是问就业或者其他技术问题的,我都尽可能一一解答。我觉得不管你课上得多精彩,大多数学生在意的其实还是能在这门课上拿多少分。而我对作业的态度很明确,那就是没有要求。你要晚交?可以。你想抄袭?随便,别被我发现就行。你做错了?只要思路大体对,我基本给全分。一开始我会担心我作业出得又简单,批得又松,会不会大家分数太高。而事实证明我想多了,每个班上总有几个人,要么从来不交作业,学期最后一星期来求我,要么交了但有一半空着。能认认真真地以一定质量做完全部作业的,占比不超过班里的50%,所以最后我给分的分布也很好看。我知道有些全职教授对于作业有千奇百怪的规定,但对于我们AF来讲,就是来满足一下爱好顺便赚个钱,不是迫不得已是真不想跟学生有太多牵连,把学生挂了对我们麻烦很大,要写书面报告,层层上传到教务处,可能还要接受质询。所以如果看我贴的有在校学生的话,你在学校遇到AF教课,只要你态度好点,作业认真点写,不会就问,只要让我们看到你的effort了,拿个A根本不是问题。学期结束后,两所学校都有学生给老师打分的环节。很少有学生给我打分,给我打分的基本也是大体满意,可能因为我不为难他们吧。
最后讲讲学校的一些政策对我们的影响,而这里就是A校和B校最大的不同。A校基本就是hire到人来讲课就算完成任务了,只要分数分布正常,期末测评不差就行,至于我教什么,怎么教,他们都很随意。有时候我需要出差,就提前把课录好给学生,也从来没人有反对意见。而B校就严格多了,前两个星期要track学生是否有足够的activity,不然视为drop。想要请假很烦,虽然最后会批,但这个case要escalate到学校委员会。我今年请假了三个星期,虽然都有和系主任提前打招呼并且每次课都有录好,但还是受到警告说以后不能这样。对于教学内容更是层层把控,虽然不限制我们教什么,但改动syllabus是需要经过curriculum委员会批准的,明天我就要参加一个关于我这两门课syllabus更新的审查会,确定我的更新是合理的。两个学校都要求onsite教课,也要求学生到场,但A校我偶尔网上上课,或者我在onsite并且live授课以及recording,以保证不想来的同学也能听到,一点问题都没有。而B校则也要层层审查和批准,最后批准了我录课的请求。两校学生其实都没区别,比起onsite他们也都普遍更喜欢在家听课,起码喜欢有这样的选择权,但B校显然更严格。总而言之,A校钱少事少,B校钱多(一丢丢)事多。
总而言之,对于AF这份副业,我认为备课是一个比较耗时的过程,尤其是我刚开始上这几节课没多久。所用的时间加起来,粗略算下来,至少是我主业工作的一半甚至更多,并且给钱也显然远少于我的主业。而且还有一点,我教的三门课好歹都是database相关的,学校也算给了之前的课件作为辅助,所以备课其实还可以互相借鉴,如果你同时上几门完全不同的课,备课会成倍地痛苦。如果并不enjoy这份工作本身,单纯为了多赚点钱,做AF我认为是有点得不偿失的,不如多刷两道题跳槽,这多出的薪水可远远不止这一两万。或者另寻他路,找找其他副业。下个贴我会从主观上谈谈自己的感想。
补充内容 (2024-10-23 08:22 +08:00):
有一点我忘说了,在美国从小学到高中,当老师都需要取得相应的资格证,然而大学老师不用。这和中国应该是一样的。
挺好的,楼主单纯就是爱教书,享受爱好还能有钱收就已经很开心了,赚多赚少都是bonus
匿名用户-RSX5U
:
同教过课程, 1099 税后让我觉得收入和付出实在不值得, 后来思虑再三,还是决定放弃了
楼主
donnice
: 谢谢分享!其实可发兴趣爱好版
我前两年偶尔会去其他学校给guest lecture 时薪750-1000 一般都是2小时 就是1500-2000 当然也有那种熟人邀请不拿钱纯粹为爱发电的
workload大概怎樣呢?是上完課就走,還是要office hour改作業什麽的都有?目測工資不如博士生TA高啊
好奇楼主如何做到时间安排的?如果你是全职swe,哪里有时间做AF
如果可以remote挺好
感谢分享!同喜欢教书
> 以及招人的bar并不高,一般要求有master学位,然后业界有相关经验就可以。经验足够多的,你是bachelor毕业也无所谓。
请问楼主bachelor一般要多少YOE 认不认industry title?4年经验这种是不是E6也没戏
楼主
donnice
: > 以及招人的bar并不高,一般要求有master学位,然后业界有相关经验就可以。经验足够多的,你是bachelor毕业也无所谓。
请问楼主bachelor一般要多少YOE 认不认industry title?4年经验这种是不是E6也没戏
感谢分享!同喜欢教书
> 以及招人的bar并不高,一般要求有master学位,然后业界有相关经验就可以。经验足够多的,你是bachelor毕业也无所谓。
所以,最最重要的其实是看你的背景能否满足校方的需求。如果竞争者很多,title高肯定是有帮助的,虽然我个人怀疑这种岗位不会有几个竞争者。。。
感谢楼主分享!哈哈我个人也是很喜欢那种给别人讲清楚一个东西原理的过程,感觉很有成就感
有一点疑惑想请问(可能有点难回答,不好意思),AF教书如果想去一个相对好一些的学校(也是我的母校),是不是需要从社区大学或者相对普通的学校里一点点积攒教书经验做起呢?还是只要学位+业界经验符合就没太大所谓?
aliasme
: 有一点疑惑想请问(可能有点难回答,不好意思),AF教书如果想去一个相对好一些的学校(也是我的母校),是不是需要从社区大学或者相对普通的学校里一点点积攒教书经验做起呢?还是只要学位+业界经验符合就没太大所谓?
我以前查过我学校AF的工资,好像都是一门课3000-5000,挺低的,对比我们学费之高,简直是欺负人。
楼主
donnice
: 感谢楼主分享!哈哈我个人也是很喜欢那种给别人讲清楚一个东西原理的过程,感觉很有成就感
有一点疑惑想请问(可能有点难回答,不好意思),AF教书如果想去一个相
我觉得能决定你去哪儿教书的最最关键的一点,是看你住得离哪所学校近。现在大部分学校都要求回去上课了,为了找一个能长期合作的愿意晚上来上课的AF,肯定是希望你住得近点。试想,本来给的钱就少,然后你住50 mile开外,你可能愿意长期在这儿教书么?
其次就是看你的背景和学校要求教的课是不是match,就和找工作一样。比如你是个做前端的专家,而学校缺一个教离散数学的,他也没法要你是吧?如果你特别想去一个学校教书,不妨和系主任套磁,elaborate一下你的经验和热情,效果会很好。
最后,比较好的学校,R1类的学校,一般是要求老师有PhD的,哪怕只是个part time lecturer。如果你没有,那基本去不了。
因此你最后能去哪个学校,和学校本身的排名关系不大。如果你满足以上所有要求,加上校友加成,更容易去你的母校也说不定。
我也是AF,这个工作确实不能当全职,因为薪酬低。
在有些学校, 教一门课一个学期才2500刀。
polarcat2
: 在有些学校, 教一门课一个学期才2500刀。
感谢楼主分享!
> 传说中东亚学生的课堂一片寂静,西方学生的课堂上师生热切互动的场景并没有发生,A校和B校都是以本地人为主,我问any question的时候能得到的也只有沉默的回应😂。office hour因为个人原因只能定在周末晚上,整个学期没有一个人来过。
> 学期结束后,两所学校都有学生给老师打分的环节。很少有学生给我打分,给我打分的基本也是大体满意,可能因为我不为难他们吧。
我觉得在国内做老师都有些受到尊敬的感觉。觉得美国这里不是如此。学生有了上课的成绩可以毕业,找工作。不一定觉得会尊敬你。可能还会因为成绩不好来找你理论,说影响找工作了。不知道楼主是否有类似的感受。
三日坊主
: > 传说中东亚学生的课堂一片寂静,西方学生的课堂上师生热切互动的场景并没有发生,A校和B校都是以本地人为主,我问any question的时候能得到的也只有沉默的回应😂。office hour因为个人原因只能定在周末晚上,整个学期没有一个人来过。
> 学期结束后,两所学校都有学生给老师打分的环节。很少有学生给我打分,给我打分的基本也是大体满意,可能因为我不为难他们吧。
我觉得在国内做老师都有些受到尊敬的感觉。觉得美国这里不是如此。学生有了上课的成绩可以毕业,找工作。不一定觉得会尊敬你。可能还会因为成绩不好来找你理论,说影响找工作了。不知道楼主是否有类似的感受。
这种工作对身份有什么要求
楼主
donnice
: 这种工作对身份有什么要求
感谢楼主分享!
> 传说中东亚学生的课堂一片寂静,西方学生的课堂上师生热切互动的场景并没有发生,A校和B校都是以本地人为主,我问any question的
我对学生完全没有这方面的要求。在我看来,我和学生的关系就是互相需要,学生出钱买知识,我收钱卖知识。大家互相配合把知识传递这件事做好,我讲的对的你消化进去,我讲的不对的你指出来,我讲的不清楚的你要求我就再讲一遍。事后能发展成长期connection最好,发展不成也无所谓,就这么简单。至于尊敬,只要我学生像尊敬世界上每一个人那样尊敬我就行。
楼主能问下AB都是什么学校么 私信也可hh
楼主
donnice
: 楼主能问下AB都是什么学校么 私信也可hh
请原谅我拒绝这个请求,学校实在很小,里面中国人没几个,有心人肉的话估计一下子就能人肉出来了😂
最后再谈谈自己目前为止的体会吧,这部分比较主观,可参考性可能不高,不喜勿喷。
上面也有不少朋友提到,虽然赚钱不多,但对于把教书当作爱好的人来说,AF作为副业也挺适合。这个结论之于我,应该不能算错,但确实不那么准确。如上面所提到,出于各种原因我对传道授业这件事是有兴趣成分在里面的,也是这份兴趣促使我找到了A校的岗位。但现在两年多过去了,不能说我已经失去了对教书的兴趣,但能支撑我走到现在,并且在可预见的未来还想继续走很长一段时间的,肯定不是所谓的兴趣。并且AF给得工资也实在不算多,钱肯定也不是主要因素。
对我来说最重要的因素,其实是对我个人业务水平的提升。是的,当AF,或者说当数据库AF,对我作为一个后端和infra程序员的技术实力来说,是有很明显的加强的。在我看来,众多的CS基础课里,数据库可以是一门非常综合且实用的课。如果是20年前教DB,那大概是只能教教RDBMS,Relational理论,Table的设计,实用一点的教一下Oracle DBA基础,等等。但现在这个所谓的移动互联网时代,万物皆数据,一切业务逻辑的底层都围绕着数据的传递,加工,存储和应用展开,而各式各样的数据库和数据中间件在其中扮演着最核心的角色。不说别的,就说各种面试的所谓系统设计,绝大部分的本质就是设计一个数据系统来满足相关业务的需求。不止如此,数据库作为一个系统的终端,几乎可以和计算机的任何其他科目产生关联,OS,Network,算法,信息安全,机器学习,甚至是Web开发等等,都是相关的。加上现在数据库五花八门,广义上的数据库几乎囊括了系统设计中的任何常客,从最传统的RDBMS,到各种NoSQL诸如KV/Document DB/Wide Column/Graph/Time Series等等,到Spark/Flink/MQ等数据中间件,再到云上的Data Warehouse/Data Lake/Object Storage,甚至现在大火的GenAI系统中也有Vector DB作为关键的一环,之前的网红比特币背后也少不了以Blockchain为基础的去中心化数据库的支持。所以要讲好数据库,必然要求讲授者有极其宽广的知识面和一定深度的实践经验。这两年为了准备课件,我翻遍了MySQL高性能设计,DDIA等经典书目,也反复研读了BigTable,Flink,Cassandra等经典paper,不敢说都读懂了,但确实了解了很多设计相关的新知识,并且这些材料真心常看常新,每次都能读到点新花样。同时我的本职工作是做GenAI Solution,因此我也加入了Retrieval Argumented Generation,Text-to-SQL等最前沿的知识,不仅给我的课件增添了一些亮点,也对自己的工作从理论方面上有了更深入的认识。以前在Gatech读书的时候也有不少读论文的环节,但我要么跳过了,要么读个大概。现在要写PPT教别人了,一份PPT的内容要撑够两节课,所以必然不能再浮于表面,而是要深入想明白很多细节才行了,不然PPT的内容无法自圆其说。这里我真心推荐用ChatGPT和NotebookLM看paper,能帮你总结,不懂就问,大大节省了很多内耗的时间。所谓教学相长,为了教会别人,我自己得先学一遍学懂了才行。当且仅当你能用清晰的语言教授一项知识,才能说明你真的懂了这项知识。同时我也比平时更关注一些技术blog,看到和数据库有关的好的内容便会看一看,合适的就想想怎么加到我的PPT里。对于现在的我来说,面试系统设计,至少在基础知识这块儿应该说是不缺啥了,每次上课就当是在重新复习了。实话说,我教的内容对本科生来说是有点超纲了。但再说得露骨一点,我是为了自己学,顺便通过教授来验证自己的学习成果。我当然尽我所能把这些知识讲得通俗易懂,但至于学生是否听懂了,我其实并不是特别在乎。
另一个重要因素则是个人英文表达能力的提升。虽然程序员做到L5这个级别,基本上是不太可能一天到晚只写码不说话的,但就靠这点开会说的英文,是远远达不到让自己的口语能到流利表达的水准的,更何况开会讲的往往都是自己非常熟悉的一个小领域里的内容,翻来覆去也就这么几个词。但上课则完全不一样,自己要在运用一些平时不怎么熟悉的知识,当着一群人的面独自讲一个多小时到三个小时,还要适当地辅以写黑板来增强自己的表达,并且要随时面对可能到来的卡壳而做到灵活变通,这对我本人是个很好的锻炼。我以前刚会讲职场英语的时候有个致命的缺点,就是太过啰嗦,一句话能讲很久而辞不达意。现在我虽然远没到什么native水平,但至少收放自如,能用一个比较完整的句子,在合理的长度内,清晰地表达自己的核心观点了。我个人觉得,自从我读过MBA,加上开始教书以来,我的英文表达能力确实上了一个新的台阶。其实表达的核心不在于英文,还是在于对于自己所讲的话题的把握程度。相信随着我对数据库这个领域的继续深入学习,我的表达还能有进步。
还有一个因素则是多一个技能,多一份失业保障。这几年程序员失业潮到来,每个人都人心惶惶,没有人敢说自己是安全的。而且很明显,我这么划水的一个人,今天不知道明天的。虽然我们都知道失业随时可能降临到自己头上,但绝大多数人并不知道自己真的丢掉工作了,IT行业又不再景气,自己能去做什么。我给自己的答案就是当讲师,我所在的两所学校的CS系都常年有在招聘全职的讲师,高端一点的,西雅图附近的UW Bothell的CS系也在招全职Associate Teaching Professor(不需要PhD!同样的岗位UW Seattle就需要。),工资不高但好歹过了六位数。我想拥有比较丰富的业界和教育经验的我,在申请此类岗位时应该会比一般人更有把握。当然,讲师这个职位选择面也很窄,但怎么说呢,有总比没有好嘛!
最后一个很小但确实存在的因素,就是暗暗希望为CS教育的进步出一份小小的力。我们大家都是读过大学的,应该深知就软件工程教育而言,除了四大名校的个别课,绝大多数大学CS系教授的内容都相当过时和艰深,和实际应用之间的联系相当微弱,要么就是流于表面,教大家用各式各样的技术,走一遍各种quick start 101,却没有系统地让学生了解为什么要学习这个技术,在什么场景下该用什么,如何做trade off。不知道现在是否好点,但我10年前在密歇根学数据库的时候,被活生生地上成一门数学+算法课。而我看我B校的一门Big Data System课,就是教大家在GCP上,Hadoop搭一搭,Spark搭一搭,Pub/Sub搭一搭,再整个toy project,却没有讲清楚云计算和分布式系统的基本理念,而这才是最重要的。所以我希望能通过我的课,影响一小部分学生,让他们在将来工作、准备面试的时候,甚至毕业多年后,遇到一些技术问题,想起来翻一翻我的PPT,感叹一句“原来当时那个Asian guy说的是这个意思”。那也不枉我的一番心血了。
总而言之,因为以上种种原因,我对AF这份工作还是乐在其中的。虽然不太可能真的转为全职(真的转为全职估计就要为工资发愁了),但希望有机会的话我可以多做一段时间,并继续从中获益。
以后有什么新的想法我会不定时更新,有问题大家随便问!
hangover
: 上面也有不少朋友提到,虽然赚钱不多,但对于把教书当作爱好的人来说,AF作为副业也挺适合。这个结论之于我,应该不能算错,但确实不那么准确。如上面所提到,出于各种原因我对传道授业这件事是有兴趣成分在里面的,也是这份兴趣促使我找到了A校的岗位。但现在两年多过去了,不能说我已经失去了对教书的兴趣,但能支撑我走到现在,并且在可预见的未来还想继续走很长一段时间的,肯定不是所谓的兴趣。并且AF给得工资也实在不算多,钱肯定也不是主要因素。
对我来说最重要的因素,其实是对我个人业务水平的提升。是的,当AF,或者说当数据库AF,对我作为一个后端和infra程序员的技术实力来说,是有很明显的加强的。在我看来,众多的CS基础课里,数据库可以是一门非常综合且实用的课。如果是20年前教DB,那大概是只能教教RDBMS,Relational理论,Table的设计,实用一点的教一下Oracle DBA基础,等等。但现在这个所谓的移动互联网时代,万物皆数据,一切业务逻辑的底层都围绕着数据的传递,加工,存储和应用展开,而各式各样的数据库和数据中间件在其中扮演着最核心的角色。不说别的,就说各种面试的所谓系统设计,绝大部分的本质就是设计一个数据系统来满足相关业务的需求。不止如此,数据库作为一个系统的终端,几乎可以和计算机的任何其他科目产生关联,OS,Network,算法,信息安全,机器学习,甚至是Web开发等等,都是相关的。加上现在数据库五花八门,广义上的数据库几乎囊括了系统设计中的任何常客,从最传统的RDBMS,到各种NoSQL诸如KV/Document DB/Wide Column/Graph/Time Series等等,到Spark/Flink/MQ等数据中间件,再到云上的Data Warehouse/Data Lake/Object Storage,甚至现在大火的GenAI系统中也有Vector DB作为关键的一环,之前的网红比特币背后也少不了以Blockchain为基础的去中心化数据库的支持。所以要讲好数据库,必然要求讲授者有极其宽广的知识面和一定深度的实践经验。这两年为了准备课件,我翻遍了MySQL高性能设计,DDIA等经典书目,也反复研读了BigTable,Flink,Cassandra等经典paper,不敢说都读懂了,但确实了解了很多设计相关的新知识,并且这些材料真心常看常新,每次都能读到点新花样。同时我的本职工作是做GenAI Solution,因此我也加入了Retrieval Argumented Generation,Text-to-SQL等最前沿的知识,不仅给我的课件增添了一些亮点,也对自己的工作从理论方面上有了更深入的认识。以前在Gatech读书的时候也有不少读论文的环节,但我要么跳过了,要么读个大概。现在要写PPT教别人了,一份PPT的内容要撑够两节课,所以必然不能再浮于表面,而是要深入想明白很多细节才行了,不然PPT的内容无法自圆其说。这里我真心推荐用ChatGPT和NotebookLM看paper,能帮你总结,不懂就问,大大节省了很多内耗的时间。所谓教学相长,为了教会别人,我自己得先学一遍学懂了才行。当且仅当你能用清晰的语言教授一项知识,才能说明你真的懂了这项知识。同时我也比平时更关注一些技术blog,看到和数据库有关的好的内容便会看一看,合适的就想想怎么加到我的PPT里。对于现在的我来说,面试系统设计,至少在基础知识这块儿应该说是不缺啥了,每次上课就当是在重新复习了。实话说,我教的内容对本科生来说是有点超纲了。但再说得露骨一点,我是为了自己学,顺便通过教授来验证自己的学习成果。我当然尽我所能把这些知识讲得通俗易懂,但至于学生是否听懂了,我其实并不是特别在乎。
另一个重要因素则是个人英文表达能力的提升。虽然程序员做到L5这个级别,基本上是不太可能一天到晚只写码不说话的,但就靠这点开会说的英文,是远远达不到让自己的口语能到流利表达的水准的,更何况开会讲的往往都是自己非常熟悉的一个小领域里的内容,翻来覆去也就这么几个词。但上课则完全不一样,自己要在运用一些平时不怎么熟悉的知识,当着一群人的面独自讲一个多小时到三个小时,还要适当地辅以写黑板来增强自己的表达,并且要随时面对可能到来的卡壳而做到灵活变通,这对我本人是个很好的锻炼。我以前刚会讲职场英语的时候有个致命的缺点,就是太过啰嗦,一句话能讲很久而辞不达意。现在我虽然远没到什么native水平,但至少收放自如,能用一个比较完整的句子,在合理的长度内,清晰地表达自己的核心观点了。我个人觉得,自从我读过MBA,加上开始教书以来,我的英文表达能力确实上了一个新的台阶。其实表达的核心不在于英文,还是在于对于自己所讲的话题的把握程度。相信随着我对数据库这个领域的继续深入学习,我的表达还能有进步。
还有一个因素则是多一个技能,多一份失业保障。这几年程序员失业潮到来,每个人都人心惶惶,没有人敢说自己是安全的。而且很明显,我这么划水的一个人,今天不知道明天的。虽然我们都知道失业随时可能降临到自己头上,但绝大多数人并不知道自己真的丢掉工作了,IT行业又不再景气,自己能去做什么。我给自己的答案就是当讲师,我所在的两所学校的CS系都常年有在招聘全职的讲师,高端一点的,西雅图附近的UW Bothell的CS系也在招全职Associate Teaching Professor(不需要PhD!同样的岗位UW Seattle就需要。),工资不高但好歹过了六位数。我想拥有比较丰富的业界和教育经验的我,在申请此类岗位时应该会比一般人更有把握。当然,讲师这个职位选择面也很窄,但怎么说呢,有总比没有好嘛!
最后一个很小但确实存在的因素,就是暗暗希望为CS教育的进步出一份小小的力。我们大家都是读过大学的,应该深知就软件工程教育而言,除了四大名校的个别课,绝大多数大学CS系教授的内容都相当过时和艰深,和实际应用之间的联系相当微弱,要么就是流于表面,教大家用各式各样的技术,走一遍各种quick start 101,却没有系统地让学生了解为什么要学习这个技术,在什么场景下该用什么,如何做trade off。不知道现在是否好点,但我10年前在密歇根学数据库的时候,被活生生地上成一门数学+算法课。而我看我B校的一门Big Data System课,就是教大家在GCP上,Hadoop搭一搭,Spark搭一搭,Pub/Sub搭一搭,再整个toy project,却没有讲清楚云计算和分布式系统的基本理念,而这才是最重要的。所以我希望能通过我的课,影响一小部分学生,让他们在将来工作、准备面试的时候,甚至毕业多年后,遇到一些技术问题,想起来翻一翻我的PPT,感叹一句“原来当时那个Asian guy说的是这个意思”。那也不枉我的一番心血了。
总而言之,因为以上种种原因,我对AF这份工作还是乐在其中的。虽然不太可能真的转为全职(真的转为全职估计就要为工资发愁了),但希望有机会的话我可以多做一段时间,并继续从中获益。
以后有什么新的想法我会不定时更新,有问题大家随便问!
目前的经济环境下,高校会更多的雇佣adjunct,把这方面的经验分享给大家,给楼主点赞!
补充一点楼主好像没说到的。有些学校特别是公立学校,adjunct都有自己单独的工会。尽管工会在部分华人眼里口碑不好,但他们会保障很多人的福利。有时候adjunct一定的时间或者credit hour之后,就可以加入,获得一些有帮助的福利,比如自己和家人在这个学校学习的学费减免,健康保险,等等。
mygod
: 补充一点楼主好像没说到的。有些学校特别是公立学校,adjunct都有自己单独的工会。尽管工会在部分华人眼里口碑不好,但他们会保障很多人的福利。有时候adjunct一定的时间或者credit hour之后,就可以加入,获得一些有帮助的福利,比如自己和家人在这个学校学习的学费减免,健康保险,等等。
请问h1b可以兼职做AF吗
楼主
donnice
: 请问h1b可以兼职做AF吗
哥,你这帖子太干货了。已收藏。
想问一下AF是不是一定要有卡才行。L签证可以不?
楼主
donnice
: 想问一下AF是不是一定要有卡才行。L签证可以不?
哥,你这帖子太干货了。已收藏。
想问一下AF是不是一定要有卡才行。L签证可以不?
感谢楼主分享!问一下,diversity statement 一般咋胡诌啊?我看到不少学校类的岗位有要求这方面的内容。另外,你说随便编的reference 邮箱这些最后学校没有去联系对方核实吗?也是在看学校方面职位的时候看到要 reference 就头疼。
楼主
donnice
: 感谢楼主分享!问一下,diversity statement 一般咋胡诌啊?我看到不少学校类的岗位有要求这方面的内容。另外,你说随便编的reference 邮箱
reference我就大概放几个离职同事的邮箱,或者几个不存在的人的学校邮箱之类的😂也不知道为什么他们并不在意。估计AF本来就很随便,只有申请全职faculty的时候,推荐信才有分量吧。