Things I wish I had known when I started programming, Part 4 (2019)

栏目: IT技术 · 发布时间: 4年前

内容简介:Yepp, more things I wish I'd known when I started, 4th edition.You can find the first article in the serieshere.And the previous articlehere

Yepp, more things I wish I'd known when I started, 4th edition.

You can find the first article in the serieshere.

And the previous articlehere

Love maintenance work or at least learn to appreciate it

Very few things are more despised by programmers than doing maintenance work and working with legacy apps.

This can be counterproductive, as most of the work available involves doing exactly that. Companies have running systems, some built a long time ago, and someone needs to maintain that code. This is especially true if you are starting at an entry position, where you'll most likely work on some old application the company has been running for more than a decade.

We love working on new projects for several reasons:

  • We can choose which technology to use.
  • We can flex our creatives muscles and create something cool.
  • There's a lot of freedom when designing the solution.
  • You get to work on The Next Big Thing and all the credit it carries.

The huge difference between how we perceive maintenance work and new project development is a sad thing. On one hand, most of the really important job with high impact happens on those legacy systems, whereas The Next Big Thing often goes bust. On the other hand, that cool new app will be legacy as soon as it hits production and you start receiving new requirements.

We should start seeing maintenance work under a more positive light. After all, most of the value provided to end users happens on those systems. We could exercise our creative muscles by refactoring and improving the design, or increasing the test coverage, all proper challenges for developers of any level.

Learn to love maintenance work, it's most likely what you'll spend doing most of the time as a programmer.

Make accomplishments visible

You are an awesome developer, always finishing tasks on time, writing ultra-complete test suites and providing to customers exactly what they want. You do a great job every day and work extra hard to ship those last-minute features. Then, that time of the year when promotions are given arrives and you... you are still in the same position?

I know it can be extremely frustrating, and you might end up resenting management. After all, aren't you always doing an outstanding job? how dare they pass this chance to show me how much they appreciate my hard work!

In reality, managers are just too busy to keep track of your accomplishments. It's your responsibility to make your contribution visible to management.

It doesn't even require too much effort. Keep a list of the most important things you accomplish every week, and send small reports at the end of the week listing what you accomplished. You don't need to generate a fancy document: an email with bullet points will do.

It has two important advantages:

  • Management doesn't need to pester you to get an idea of what you are doing at work.
  • You keep a registry of your accomplishments, which is useful for negotiating raises and other things.

Take a proactive stance on the way management evaluates you, one of the biggest mistakes you can make is to outsource that responsibility to people who are already too busy with other things. Management will appreciate it, and so will you.

Fight the imposter syndrome

Congratulations!

You got your first software development job. The idea of being interviewed made you feel very anxious, but you studied hard and aced the whole thing. Finally, you arrive at the office on your first day and...

And it's terrifying. Suddenly, you feel like a Jon Snow who knows nothing, and self-doubt starts to creep in. What if they find out I am not that smart? do I really deserve this job? am I a fraud? how long will it take them before they find out I'm a fraud and the horrible mistake they made by hiring me?

The following weeks don't help that much. Perhaps it's a technology you are not that familiar with, or maybe they ask you to work on some dark corner of their massive legacy application. Solving the tasks take you twice (or more) as long as the estimate, and you grow more and more anxious.

Been there, more than once.

It's all normal, the good old imposter syndrome. It's this feeling that you are fake, and that you don't deserve to be there. It will go away after a couple of weeks and you'll start to feel more confident. Ramp-up takes time, and in truth, no one really expects you to be 100% productive from the start. Your employer knows it will take some months before you know what you are doing, so don't punish yourself that hard.

Keep working hard, in no time you will become an important part of the team and your contributions will start to have an impact. We've all felt it, and I guarantee you it will go away. So keep up the good work!

Oh but I also knew all these things.

It's ok, maybe in the next article you'll find something you didn't know yet.

Thank you for reading, I hope you learned one or two new things or at least got something new to think about.


以上所述就是小编给大家介绍的《Things I wish I had known when I started programming, Part 4 (2019)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

未来医疗

未来医疗

【美】埃里克•托普 (Eric Topol) / 郑杰 / 浙江人民出版社 / 2016-5 / 69.90

在传统医学中,医生是上帝,是权威,拥有至高无上的解释权和裁决权,面对疾病,患者总是被动接受,为医命是从。而在大数据时代下,医疗领域将发生颠覆性的变化,以患者为中心的民主医疗时代即将到来。 享誉全美的医疗预言家埃里克•托普在《未来医疗》中,为我们展示了医疗领域创新的憧憬, 分析了在开放的智能时代中,无线医疗技术将从医疗服务、医患关系上颠覆自古以来的家长式医疗,实现“以患者为中心”的个体医疗革命......一起来看看 《未来医疗》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具