liquidcool
Joined 19 years ago
Joined 19 years ago
But he is actually talking about offering his first 20 hours to a client, which is what I do as a consulting CTO. It works out exceptionally well for my clients. And I have had few issues when I hire contractors who juggle a couple part time clients. If you do that full time, you quickly learn time management.
He's also right there is no market for this for programmers beyond Upwork or Toptal. Companies rather pay a premium to get 4 productive hours, 2 hours of email and meetings, and 2 hours of coffee and socializing.
One exception might be DevOps, which is more project based.
I don't know when this was, but I'm just starting learning it now and the "Getting Started" tutorial seems to be 2+ revisions behind the current CLI, which is their main product.
And UI components moved to v2 with a new doc site, but all the main docs/tutorials still refer to v1. There are breaking changes.
I'd also expect to pull up docs on any class or function in my IDE (IntelliJ), but there is nothing for Amplify. Just type definitions, no explanations.
Really rough developer experience.
This explains so much of human behavior, but I hesitate to recommend it to people because it is so easily weaponized. To borrow from Harry Potter, it's the closest thing I've seen to a book of charm spells, but was written as a defense against the dark arts. Better everyone read it rather than just the marketers.
What I really love about this book is how much of politics it has explained for me, including the downfall of the USSR and the American civil rights movements, but also newer events like Schwarzenegger's poltiical career.
If you like this, I'd also recommend:
"Thinking, Fast and Slow" by Daniel Kahneman "Predictably Irrational" by Dan Ariely "The Power of Habit" by Charles Duhigg
All are in a similar vein. For more focused book on human behavior, I recommend first time team leads/managers read:
"Switch" by Dan and Chip Heath
A solid guide to changing organizational behavior.
In addition, it would be good to see other indicators such as downloads, jobs (admittedly hard to measure accurately), BuiltWith trends, etc. Considering the millions of front end developers, this seems a very small sample size.
https://www.artofmanliness.com/articles/fall-asleep-fast/
For me, none of the imagination techniques work, but mindfulness meditation - simply focusing on my breathing - does the trick.
1. Client education, AKA managing expectations. Educating the client on the principles and challenges of software development. Most know very little about this and it makes their job very frustrating. Every failure of consulting is really a failure to manage expectations.
2. Communication. How are they communicating, what are the problems? This is the most important thing in software development (and business in general).
3. Methodology review. How are they managing the project? What methods and tools are they using? Are the tools configured, integrated, and automated correctly?
4. Developer practices. Mostly based on my programmer productivity talk.
You are focused on #4 (and some of #3), which is important, but I find the first 3 way more important for "success." #2 sounds like your biggest problem. When I hire developers (always 100% remote) I prioritize two things: communication skills and discipline.
I'll give you one tip: static code analysis tools. This way the tool is criticizing the code instead of you (of course, I agree with code reviews). When I realized how useful this is I started giving talks on it.
Also, Gerald Weinberg's The Secrets of Consulting is gold: https://amzn.to/2JvDZnx
According to the US Department of Transportation, there are about 5,800 train-car crashes each year in the United States, most of which occur at railroad crossings. These accidents cause 600 deaths and injure about 2,300.
But listing criteria without saying anything about how you test for it - like empathy - is a pretty big gap. Hopefully you have a talented HR member with a psych background who can guide you through behavioral questioning.
I hire 100% remote developers, so my #1 soft criteria is discipline. And I find I can test for that, along with communication skills (#2) by asking them to write about best practices. Disciplined developers love to talk about best practices.
I have a career course that should give you a ton of ideas to help, see my profile for details. If it's taking you that long to find a job, there are some fundamental issues with your strategy and tactics.
But now I'm currently focusing more on staffing, since almost nobody technical is in recruiting, hence I'm a no brainer to hiring managers. Long term, I'll funnel recruiting revenue into products.
Do they have an awesome sales/marketing team, or are those rates typical for your industry? If it's typical, you might consider freelancing. Or finding a small consultancy that will treat you better and take care of sales for you.
I'll say I was once unhappy and asked to be laid off. They told me no, essentially because I was a cash cow. You think your bargaining position is tough, but if your utilization rate is 100% and their margin is 80%, if you leave they are guaranteed to lose at least 160 billable hours (up to 480) while they replace you. I'm assuming you're not in gaming or a glamour industry where there is a line out the door to replace you.
In addition to fair compensation, you mention "stressing over issues." I've noticed more than once that I've been stressed over problems my clients didn't really care about. It's not easy, but it's important to keep your stress levels in line with management's (or lower).
Run the Orange County Java User Group (http://www.meetup.com/Orange-County-Java-Users-Group-OCJUG/).
Wrote "Get a Better Developer Job!" at http://madeupname.com/careercourse
LinkedIn: https://www.linkedin.com/in/philipyurchuk
Personal blog at http://philip.yurchuk.com