TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: Software Engineers – How to overcome being assigned tedious tasks

6 点作者 hershyb_大约 4 年前
I&#x27;d really appreciate some advice here. I&#x27;ve been working for about 6 months on a project and everyone on the team has about the same tenure as myself at the company&#x2F;project. Initially, I was assigned to write tests for our end-end pipeline and completed the assignment, but eventually that was the only type of work that I was given. No real coding, just testing. Maybe software engineers that haven&#x27;t been performing at high levels are mostly given the job of testing code, or it&#x27;s just a standard to have certain developers do all of the testing, but it&#x27;s really eroded my confidence and passion for developing. I&#x27;ve tried to bring this up with my manager (admittedly passively) and he keeps suggesting that I will be able to work on different assignments after a couple months. In addition, the team is so large that it&#x27;s often easy for him to lose track of an individual developer. Any suggestions on how I can improve myself to get out of this rut when everyone else in the group seems to be enjoying the new types of experiences they are learning from.<p>P.S. hope I didn&#x27;t complain too much, but if I am just let me know :)

7 条评论

softwaredoug大约 4 年前
Want interesting work? Don’t expect to get it assigned to you, you have to find those ideas. Then you have to convince others it’s a valuable investment. In short you need a little bit of sales skills to put yourself in a position to propose and “win” the cool work.<p>The best way to do this is with “show don’t tell”: make quick and dirty demos of what you’d propose. A demo with kinda working code is far easier to make decisions about than some giant proposal of an idea. And don’t just sit on it until you see your boss: get feedback from colleagues about your idea before anyone else. Either the enthusiasm will snowball, and you’ll have allies when going to management on why doing this work is essential. Or it’ll sputter out, and that’s a valid signal too!<p>Also:<p>&gt; the team is so large that it&#x27;s often easy for him to lose track of an individual developer.<p>This jumped out as a bit of a red flag. Sounds like you’re doing your best but can’t get anyone’s attention. That’s frustrating. In many work environments this isn’t the norm.
luthfur大约 4 年前
So you are assigned to write tests which you consider tedious, but you want to work on the main code base presumably on features. Here are my thoughts:<p>1. Always deliver the goods: Execute your assigned work to the highest quality. To help with mindset, instead of thinking of your work in terms of &quot;effort&quot;, think in terms of &quot;contribution&quot;. Great tests contribute substantially to the quality of the product and prevent future regression. Find ways to deliver some bonus improvements, for example: improving coverage, improving test speed. Demonstrate that you create value in the team beyond what is assigned. Again thinking in terms of your contribution helps ie. contribute above and beyond what is asked.<p>2. Document the value you add and highlight it to your team and manager. Don&#x27;t be passive about it. Building a reputation of quality and reliability as an engineer will help you navigate this project and beyond.<p>3. Be direct and clear about asking for work that you are interested in. Don&#x27;t be passive. Passive is weak. Top performers are not passive, they are clear about their goals and direction and go after it directly.<p>Hope this helps. Good luck!
评论 #26673054 未加载
trowmeaway1大约 4 年前
Testing is real coding! It&#x27;s just not glamorous, but testing is one thing that every developer should do although many don&#x27;t. Maybe you could carefully refactor scary parts of the code base after writing lots of tests for it. Like others have said, make a case for the refactor to your direct report. Good luck!
bckr大约 4 年前
1. Look for what interests you most about what you are doing now. Focus in on that and do the best you can at it. Learn some things around it. So, if you&#x27;re writing tests for something but you realize the thing you&#x27;re testing could be better, lean into that.<p>Alternatively, just do your work but pay attention to what others are doing and talk to them about it. See what their pain points are or what they don&#x27;t have time to do, and see if that lines up with something you&#x27;re interested in. Either way...<p>2. Come up with some interesting ideas that can benefit the business. Keep it simple and do your due diligence. Do some little experiments using around 10% of your time, or during time you&#x27;re not expected to work (yeah, it goes against the anticapitalist program, but it&#x27;s a great way to get ahead.... Anyway, you&#x27;re a knowledge worker not an assembly line person).<p>3. Try to get buy-in. Bring up the problem that you&#x27;re solving and be ready to provide the solution along with your due diligence or even a prototype. You might only get a &quot;keep looking into this&quot; but that&#x27;s your toe-hold :)<p>This was my basic strategy at the job I had before officially becoming an engineer. I was sooo tired of filling in simple reports, and I realized that I could probably automate it. I took a risk and spent some of the time I had alone at the office writing a script to make some batch edits.... And it worked! Then I was able to get buy-in to build a GUI for it. So if I was able to do this when my job description wasn&#x27;t even &quot;engineer&quot;, I know that you can do it as a SWE :)
评论 #26651185 未加载
jonaldomo大约 4 年前
when i am distributing work to software engineers, i try to assign work based on strengths, preferences and business needs.<p>if i were you and wanted to work on something different, i would first understand the business needs and the project and then tell the person who is managing the work what i wanted to work on in a polite manner.<p>e.g. if the contract is for QA work on a desktop app, then asking to redesign the thing on mobile isn&#x27;t going to fly.
stray大约 4 年前
Write the best tests possible. Believe it or not, the other work is tedious too.
Jugurtha大约 4 年前
Recycling some replies. More context on <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26182988" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26182988</a>:<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=19924100" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=19924100</a> (understanding codebases, etc.)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26591067" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26591067</a> (testing pipelines, scaffolding, issue templates)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22873103" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22873103</a> (making the most out of meetings, leveraging your presence)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22827841" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22827841</a> (product development)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=20356222" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=20356222</a> (giving a damn)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25008223" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25008223</a> (If I disappear, what will happen)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24972611" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24972611</a> (about consulting and clients, but you can abstract that as &quot;stakeholders&quot;, and understanding the problem your &quot;client&quot;, who can be your manager, has.)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24209518" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24209518</a> (on taking notes. When you&#x27;re told something, or receive a remark, make sure to make a note and learn from it whether it&#x27;s a mistake, or a colleague showing you something useful, or a task you must accomplish.. don&#x27;t be told things twice or worse. Be on the ball and reliable).<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24503365" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24503365</a> (product, architecture, and impact on the team)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22860716" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22860716</a> (onboarding new hires to a codebase, what if it were you, improve code)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22710623" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22710623</a> (being efficient learning from video, hacks. Subsequent reply: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22723586" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22723586</a>)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21598632" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21598632</a> (communication with the team, and subsequent reply: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21614372" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21614372</a>)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21427886" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21427886</a> (template for taking minutes of meetings to dispatch to the team. Notes are in GitHub&#x2F;GitLab so the team can access them, especially if they haven&#x27;t attended).<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24177646" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24177646</a> (communication, alignment)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21808439" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21808439</a> (useful things for the team and product that add leverage)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=20323660" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=20323660</a> (more meeting notes. Reply to a person who had trouble talking in corporate meetings)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22715971" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22715971</a> (management involvement as a spectrum)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25922120" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25922120</a> (researching topics)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26147502" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26147502</a> (keeping up with a firehose of information)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26123017" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26123017</a> (fractal communication: communication that can penetrate several layers of management and be relevant to people with different profiles and skillsets)<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26179539" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26179539</a> (remote work, use existing tooling and build our own. Jitsi videos, record everything, give access to everyone so they can reference them and go back to them, meetings once a week or two weeks to align)<p>&gt;<i>No real coding, just testing.</i><p>Testing, or reading the tests, is a really good way to know a codebase. It&#x27;s valuable. It enables the team to move with confidence.<p>&gt;<i>Maybe software engineers that haven&#x27;t been performing at high levels are mostly given the job of testing code</i><p>Don&#x27;t read too much into it.<p>&gt;<i>it&#x27;s just a standard to have certain developers do all of the testing</i><p>The next phase will be new commits including tests.<p>There are many ways to go about getting what you want. One of them is to be very helpful for the team and the project. Write good tests. Write tooling to make life easier. Make metaphorical buttons so people can push them and magical things happen.<p>On top of your &quot;testing duties&quot;, own the product. Improve it in any way you can. Fix a bug, implement a feature, add great docs, refine the copy, think of ways to make it more profitable, make it more stable, think of integrations, extract useful bits into libraries. This is not for everyone and the decision is yours to go above and beyond or not.<p>&gt;<i>P.S. hope I didn&#x27;t complain too much, but if I am just let me know :)</i><p>One definition of a problem is when there is a gap between a desired state and a current state that we do not how to remove. You have a problem, in that there is a gap between your desired state and your current state that you do not know how to &quot;bridge&quot;. If this were a more thorough effort, we&#x27;d probably be talking about what is it you really want, and what the &quot;actual&quot; thing you&#x27;re looking for is, but ...<p>People will gladly let you deal with more complexity once you have demonstrated you can handle more complexity. You of course can take a stand and wait to be given more complexity before you have shown you can handle more. I am not going to get into a conversation about how &quot;just&quot; or &quot;unjust&quot; this reality is. I am just telling you how to change it quickly. It may not be popular and it&#x27;s understandable and to each their circumstances but, often, if you do what most people do, you&#x27;ll live like most people live.