Most of the time I try to save energy and to avoid pressure. But if I sense something worthwhile, I can work really hard and go for the extra mile. For instance, at some point I realized unexpectedly, that I was aiming for a good university degree. So I pushed hard, and in the end my thesis was among the very best. This suddenly enabled my PhD studies, which enabled some grants, insights and relationships. I didn't plan to do a PhD, but it turns out that having one is also very useful outside academia. Therefore, instead of being powdered in the post doc mill, I left academia timely. Now working in industry, I lay dormant until I sense another capture. Again, I more or less do, what currently interests me (C/C++, Linux stack). This might change soon, and I would switch then in a heartbeat.
So I would advice you to avoid doing something, what you struggle against. Don't let yourself press or lure into some fixed scheme you don't like. Instead, find out what is important to you, what interests you, and go with the flow. Be patient, but don't hesitate to switch, if there is a good opportunity. As a software engineer, there should be plenty of it.