Read &quot;Functional Programming in Scala&quot; or any other good book on functional programming to see things differently if you&#x27;ve just stuck with imperative so far. There&#x27;s also <a href="http:&#x2F;&#x2F;iloveponies.github.io&#x2F;120-hour-epic-sax-marathon&#x2F;" rel="nofollow">http:&#x2F;&#x2F;iloveponies.github.io&#x2F;120-hour-epic-sax-marathon&#x2F;</a><p>Read books on concurrency (&quot;Learning Concurrent Programming in Scala&quot; if you carry on with scala) and then you&#x27;ll find different ways to write performant concurrent code - for CRUD sites or other stuff.<p>I&#x27;m not pushing scala rather exposure to other ways of doing things you might not have come across - functional programming, futures, akka, etc.<p>But yeah, also design patterns. And have you read <a href="http:&#x2F;&#x2F;highscalability.com&#x2F;" rel="nofollow">http:&#x2F;&#x2F;highscalability.com&#x2F;</a> for architecture ideas?