<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Henri Leinonen</title>
    <description>The latest articles on DEV Community by Henri Leinonen (@lentonen).</description>
    <link>https://dev.to/lentonen</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3763554%2F1d54923c-e502-4a2c-a1c6-2b809579cc76.jpeg</url>
      <title>DEV Community: Henri Leinonen</title>
      <link>https://dev.to/lentonen</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lentonen"/>
    <language>en</language>
    <item>
      <title>If You're a Junior Developer, Start Learning AI Tools Now</title>
      <dc:creator>Henri Leinonen</dc:creator>
      <pubDate>Sun, 08 Mar 2026 10:51:49 +0000</pubDate>
      <link>https://dev.to/lentonen/if-youre-a-junior-developer-start-learning-ai-tools-now-j97</link>
      <guid>https://dev.to/lentonen/if-youre-a-junior-developer-start-learning-ai-tools-now-j97</guid>
      <description>&lt;p&gt;Lately I've been seeing more and more job postings looking for &lt;strong&gt;AI developers&lt;/strong&gt; or developers who at least understand how to work with AI tools.&lt;/p&gt;

&lt;p&gt;If you're just starting out in your development career, this is something worth paying attention to. The market is clearly moving in this direction.&lt;/p&gt;

&lt;p&gt;One thing I usually recommend to juniors is simple:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Start experimenting with AI developer tools early.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You don't need to master everything. Just get hands-on experience.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tools I Recommend Trying
&lt;/h2&gt;

&lt;p&gt;Two tools I recommend trying first are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cursor&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Claude Code&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For example, with the &lt;strong&gt;$20 Cursor Pro plan&lt;/strong&gt;, you actually get quite a lot.&lt;/p&gt;

&lt;p&gt;This month I implemented:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A couple of features using &lt;strong&gt;Opus / Sonnet 4.6&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;One feature using &lt;strong&gt;Composer 1.5&lt;/strong&gt;, including both planning and implementation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And I still have tokens left. Actually quite a lot if I mainly use &lt;strong&gt;Composer 1.5&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzotue93okvrsldjdkm68.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzotue93okvrsldjdkm68.png" alt="Cursor usage after implementing couple of features" width="800" height="255"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So from a learning perspective, it's a pretty good deal.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Composer Is Actually Great for Learning
&lt;/h2&gt;

&lt;p&gt;Composer might not be the coolest model out there right now.&lt;/p&gt;

&lt;p&gt;But if you want to understand &lt;strong&gt;agentic workflows&lt;/strong&gt;, it's honestly really good.&lt;/p&gt;

&lt;p&gt;One of the biggest lessons is that &lt;strong&gt;planning matters&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Before you run an agent, you should already have a rough idea of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What the feature should do&lt;/li&gt;
&lt;li&gt;What files might change&lt;/li&gt;
&lt;li&gt;What steps are required&lt;/li&gt;
&lt;li&gt;How the implementation should be structured&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When you work with agent-style workflows, you quickly realize that &lt;strong&gt;good planning makes the agent much more effective&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;In a way, it forces you to think more like a software architect.&lt;/p&gt;

&lt;h2&gt;
  
  
  AI Skills Are Becoming Market Skills
&lt;/h2&gt;

&lt;p&gt;Recently I've seen quite a few job postings looking specifically for developers with &lt;strong&gt;AI experience&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Not necessarily people building foundation models but developers who know how to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Work with LLM APIs&lt;/li&gt;
&lt;li&gt;Build AI-assisted workflows&lt;/li&gt;
&lt;li&gt;Use tools like Cursor or Claude&lt;/li&gt;
&lt;li&gt;Integrate AI into real products&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is becoming a real skill set.&lt;/p&gt;

&lt;p&gt;If you're early in your career, this is a &lt;strong&gt;great time to start learning these things&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The barrier to entry has never been lower.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Advice for Junior Developers
&lt;/h2&gt;

&lt;p&gt;If you're a junior developer, I would suggest:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Start using AI tools in your daily coding&lt;/li&gt;
&lt;li&gt;Learn how AI agents actually plan and execute tasks&lt;/li&gt;
&lt;li&gt;Build small features using AI-assisted development&lt;/li&gt;
&lt;li&gt;Follow the market and see what skills companies are asking for&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;You don't need to become an AI researcher.&lt;/p&gt;

&lt;p&gt;But understanding &lt;strong&gt;how to work with AI as a developer&lt;/strong&gt; is becoming increasingly valuable.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;AI tools are not replacing developers.&lt;/p&gt;

&lt;p&gt;But developers who know how to use AI tools effectively will probably move faster, learn faster, and build faster.&lt;/p&gt;

&lt;p&gt;If you're early in your career, this is definitely something worth exploring.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>beginners</category>
      <category>career</category>
      <category>tooling</category>
    </item>
    <item>
      <title>The "Don't Be an Asshole" Theory of Career Growth: Why Weak Ties Matter More Than Clean Code</title>
      <dc:creator>Henri Leinonen</dc:creator>
      <pubDate>Sat, 14 Feb 2026 14:04:45 +0000</pubDate>
      <link>https://dev.to/lentonen/the-dont-be-an-asshole-theory-of-career-growth-why-weak-ties-matter-more-than-clean-code-51bn</link>
      <guid>https://dev.to/lentonen/the-dont-be-an-asshole-theory-of-career-growth-why-weak-ties-matter-more-than-clean-code-51bn</guid>
      <description>&lt;h2&gt;
  
  
  Introduction: The Myth of the Meritocracy
&lt;/h2&gt;

&lt;p&gt;We like to tell ourselves a comforting lie in the tech industry: "&lt;em&gt;If I am just good enough at coding, nothing else matters.&lt;/em&gt;"&lt;/p&gt;

&lt;p&gt;We imagine that if we lock ourselves in a dark room, learn Rust, master Kubernetes, and produce 10x output, the world will beat a path to our door. But that’s not how it works.&lt;/p&gt;

&lt;p&gt;This is especially true now that AI is rewriting the rules. Technical execution is becoming easier: Agents can generate the boilerplate, refactor the functions, and write the unit tests. What is left for humans?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The answer is connection.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Technical skills are the baseline and price of admission. But as AI raises the floor for technical competence, the ceiling is no longer defined by how fast you code, but by who you know and how you treat them. The multiplier is the social game. And the most critical piece of that game is a concept called &lt;strong&gt;Weak Ties&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Science: Granovetter’s Bombshell
&lt;/h2&gt;

&lt;p&gt;In 1973, a sociologist named Mark Granovetter published a paper titled "The Strength of Weak Ties." It is one of the most cited papers in sociology, and it completely changed how we should understand social networks.&lt;/p&gt;

&lt;p&gt;Here is the breakdown:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Strong ties:&lt;/strong&gt; These are your best friends, your immediate family, and your daily teammates. You move in the same circles. You know the same information.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Weak ties:&lt;/strong&gt; These are acquaintances. The guy you met at a conference once. The project manager from your last job. The person you chat with occasionally on X.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Weak ties theory offers us something counter-intuitive. When it comes to finding new jobs or spotting new opportunities, weak ties work much better than strong ties.&lt;/p&gt;

&lt;p&gt;Why? Because people close to you already know what you know. They are in your bubble.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Weak Ties&lt;/strong&gt; are bridges. They connect you to social circles you don’t belong to. They possess information you don’t have. Statistically, your next big break is far more likely to come from someone you barely know than from your best friend.&lt;/p&gt;

&lt;h2&gt;
  
  
  The "Don't Be an Asshole" Perspective
&lt;/h2&gt;

&lt;p&gt;This brings us to the Golden Rule of the social game: &lt;strong&gt;Don't be an asshole.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When you realize that "Weak Ties" are the source of opportunity, you realize that every interaction matters.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The junior dev you rolled your eyes at during code review? They might be a CTO in five years.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The person you had coffee with and forgot about? They might remember you when something changes.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The non-technical stakeholder you condescended to? They might be the one deciding whether your project lives or dies.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you treat people transactionally and only being nice to those who can help you right now, you are burning the bridges that Weak Ties are built on.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Perspective: The Serendipity of Connections
&lt;/h2&gt;

&lt;p&gt;I know quite a few people, and the trajectory of careers often hinges on random interactions that seem meaningless at the time.&lt;/p&gt;

&lt;p&gt;Here is a real example from my own life:&lt;/p&gt;

&lt;p&gt;I used to chat with a guy at my local gym. We weren't "friends" in the traditional sense. We didn't hang out on weekends or know each other's life stories. We just had fun, small conversations between sets. He was a nice guy, easy to talk to.&lt;/p&gt;

&lt;p&gt;One day, he casually asked if my company had any open positions. As it happened, we did. He asked who he should contact, so I gave him my boss's phone number.&lt;/p&gt;

&lt;p&gt;Later, I told my boss: "Look, he seems like a nice person, but I don't know anything about him professionally. I can't vouch for his code, only his character."&lt;/p&gt;

&lt;p&gt;I wasn't involved in the interview process at all. He had to prove his technical merit on his own. But guess what? He got the job.&lt;/p&gt;

&lt;p&gt;Think about the mechanics of this:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Weak Tie&lt;/strong&gt;: If he hadn’t been open to chatting with a stranger at the gym, he might have missed out on the open role.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Filter&lt;/strong&gt;: Because he wasn't an asshole at the gym, I was willing to share the contact info.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Result&lt;/strong&gt;: A connection based on pure social chance resulted in a career change for him and a new hire for us.&lt;/p&gt;

&lt;p&gt;He obviously needed the technical skills to pass the interview. I didn't hand him the job. But the access to the job came entirely from a social game played in sweatpants, not a suit.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Play the Game (Without Being Fake)
&lt;/h2&gt;

&lt;p&gt;You don’t need to be a slimy networker collecting business cards.&lt;/p&gt;

&lt;p&gt;You need to cultivate &lt;strong&gt;serendipity&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Weak ties don’t require intensity.&lt;br&gt;
They require light, consistent signals that you’re still there.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Be a "Router," not a "Firewall"&lt;/strong&gt;: When you meet someone interesting, ask yourself: Who else should they know? Connect people. Create bridges. The person who links two clusters becomes more valuable than the person who hoards access.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;The "Five-Minute Favor"&lt;/strong&gt;: If you can help someone in less than five minutes (an intro, a code snippet, a quick answer), just do it. Don't calculate the ROI. The ROI is the Weak Tie you just strengthened.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Leave Good Artifacts&lt;/strong&gt;: Most weak ties don’t know you personally. They might even just know your pull requests, your documentation, your comments. Those are also social artifacts. Make sure they say, “&lt;em&gt;I’m thoughtful and easy to work with,&lt;/em&gt;” not “&lt;em&gt;I’m technically right and emotionally expensive.&lt;/em&gt;”&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Check in with no agenda&lt;/strong&gt;: Once in a while, message that old colleague just to say, “&lt;em&gt;Hope you’re doing well.&lt;/em&gt;” Don’t ask for anything. Keep the bridge intact. Don’t wait until you need something — by then, the bridge may already be on fire.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Code rots. Frameworks change. The only thing in your career that appreciates in value over time is your network.&lt;/p&gt;

&lt;p&gt;You can be the smartest 100x AI engineer in the room, but if you’re an asshole, you isolate yourself from the chaos of luck. Weak ties bring luck. &lt;strong&gt;They bring the "right place, right time" moments&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;So, write clean code, study your algorithms and AI tools but remember: the person sitting next to you (or on the other side of that Zoom call) is the variable that will likely define your future. Treat them accordingly.&lt;/p&gt;

</description>
      <category>career</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>learning</category>
    </item>
    <item>
      <title>Why “Just Build Projects” Isn’t Enough for Junior Developers</title>
      <dc:creator>Henri Leinonen</dc:creator>
      <pubDate>Tue, 10 Feb 2026 14:54:53 +0000</pubDate>
      <link>https://dev.to/lentonen/why-just-build-projects-isnt-enough-for-junior-developers-n06</link>
      <guid>https://dev.to/lentonen/why-just-build-projects-isnt-enough-for-junior-developers-n06</guid>
      <description>&lt;p&gt;Everyone tells junior developers to “just build projects.”&lt;/p&gt;

&lt;p&gt;Build more.&lt;br&gt;
Practice more.&lt;br&gt;
Code every day.&lt;/p&gt;

&lt;p&gt;It sounds reasonable — but it leaves out something important.&lt;/p&gt;

&lt;p&gt;After talking to a lot of juniors, a pattern keeps showing up:&lt;br&gt;
they’ve built projects, but they still don’t feel ready for real work.&lt;/p&gt;

&lt;p&gt;Not because they’re lazy.&lt;br&gt;
Not because they lack motivation.&lt;/p&gt;

&lt;p&gt;But because they’re learning alone.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem with learning in isolation
&lt;/h2&gt;

&lt;p&gt;Most junior developers learn by building solo projects.&lt;/p&gt;

&lt;p&gt;That means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;no shared codebase&lt;/li&gt;
&lt;li&gt;no pull requests&lt;/li&gt;
&lt;li&gt;no code reviews&lt;/li&gt;
&lt;li&gt;no one to explain decisions to&lt;/li&gt;
&lt;li&gt;no feedback loop&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You write code, it works ("Hey it's working on my machine!"), and… that’s it.&lt;/p&gt;

&lt;p&gt;There’s no signal telling you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Is this good?&lt;/li&gt;
&lt;li&gt;Is this how teams actually do it?&lt;/li&gt;
&lt;li&gt;Would this survive in a real codebase?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So even after finishing multiple projects, something still feels missing.&lt;/p&gt;

&lt;h2&gt;
  
  
  What real work actually looks like
&lt;/h2&gt;

&lt;p&gt;In a real development team, coding is only part of the job. A lot of the work happens &lt;em&gt;around&lt;/em&gt; the code:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;planning tasks&lt;/li&gt;
&lt;li&gt;understanding the client problems&lt;/li&gt;
&lt;li&gt;breaking work into tickets&lt;/li&gt;
&lt;li&gt;making tradeoffs&lt;/li&gt;
&lt;li&gt;working in a shared repository&lt;/li&gt;
&lt;li&gt;opening pull requests&lt;/li&gt;
&lt;li&gt;reviewing someone else’s code&lt;/li&gt;
&lt;li&gt;explaining &lt;em&gt;why&lt;/em&gt; a decision was made&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are skills you’re expected to have. but they’re rarely taught. &lt;/p&gt;

&lt;p&gt;Tutorials focus on syntax.&lt;br&gt;
Solo projects focus on output.&lt;/p&gt;

&lt;p&gt;Neither prepares you for collaboration.&lt;/p&gt;

&lt;h2&gt;
  
  
  The gap no one talks about
&lt;/h2&gt;

&lt;p&gt;Here’s the uncomfortable truth:&lt;/p&gt;

&lt;p&gt;Many junior developers aren’t missing technical ability.&lt;br&gt;
They’re missing work-like experience.&lt;/p&gt;

&lt;p&gt;They’ve never practiced:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;touching code they didn’t write&lt;/li&gt;
&lt;li&gt;getting feedback on unfinished work&lt;/li&gt;
&lt;li&gt;adjusting based on reviews&lt;/li&gt;
&lt;li&gt;learning from mistakes in a team setting&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And when the job market is tight, that gap becomes painfully visible.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this matters more than ever
&lt;/h2&gt;

&lt;p&gt;When I started my own developer journeys, the market was hot.&lt;br&gt;
Breaking into tech was hard — but possible.&lt;/p&gt;

&lt;p&gt;The last few years have been very different.&lt;/p&gt;

&lt;p&gt;Junior developers are expected to have experience before they’re given a chance to gain it.&lt;/p&gt;

&lt;p&gt;That’s a tough position to be in — especially when you’re doing everything “right” and still feel stuck.&lt;/p&gt;

&lt;h2&gt;
  
  
  Practicing the work before the job
&lt;/h2&gt;

&lt;p&gt;This gap is exactly why we started building PiecesHub.&lt;/p&gt;

&lt;p&gt;The idea is simple:&lt;br&gt;
give junior developers a place to practice working the way real teams do — before a job expects it. A place where developers can find small teams and feel safe to learn by doing, together.&lt;/p&gt;

&lt;p&gt;Not by replacing tutorials.&lt;br&gt;
Not by grading people.&lt;/p&gt;

&lt;p&gt;But by creating space to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;work together on shared projects&lt;/li&gt;
&lt;li&gt;make decisions&lt;/li&gt;
&lt;li&gt;reflect on what was learned along the way&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because confidence doesn’t come from shipping alone.&lt;br&gt;
It comes from understanding &lt;em&gt;how&lt;/em&gt; and &lt;em&gt;why&lt;/em&gt; things are done.&lt;/p&gt;

&lt;h2&gt;
  
  
  I’m curious
&lt;/h2&gt;

&lt;p&gt;If you’re a junior developer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What part of “real work” feels the most unclear or intimidating right now?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you mentor juniors or work with them:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What do you see them struggle with most when joining a team?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I’d genuinely love to hear your perspective!&lt;/p&gt;

&lt;p&gt;If you’re curious what we’re building, this is the platform we mentioned above:&lt;br&gt;
👉 &lt;a href="https://pieceshub.com" rel="noopener noreferrer"&gt;https://pieceshub.com&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>learning</category>
      <category>career</category>
    </item>
  </channel>
</rss>
