Live data from Hacker News

Ask HN: As a senior engineer content with programming chops, what to learn next?

news.ycombinator.com

21–30 of 44 posts

Re: Ask HN: As a senior engineer content with programming chops, what to learn next?

#21
post #17

Maybe go beyond programming and think of methods in data analysis, machine learning, and decision making.

To second this: explore tangents to your core knowledge - electrical engineering, mathematics, logic and human systems (eg governance structures, group decision making etc). These all likely intersect with what you do and are each fascinating domains on their own.

Re: Ask HN: As a senior engineer content with programming chops, what to learn next?

#24
If you like databases, you can start exploring the internals and write one! There is no going back once you dig deep into the storage internals, KV stores, and distributed systems.

plug: I made an educational project which can help you write a database in python, from scratch - https://github.com/avinassh/py-caskdb

Re: Ask HN: As a senior engineer content with programming chops, what to learn next?

#25
Hello OP here.

Firstly, thanks for the great comments and suggestions. Its always worth it to ask fellow HN-ers about things and get their opinions.

Secondly, I want to clear some misconceptions that seem to have arisen based on how I worded some things. It was suggested that its foolish to think that once one knows Python, they have learnt all languages. I could not agree more. What I meant was that Python is my language of choice to turn a problem into code. I am not naive enough to suggest that I can solve any problem with Python. Regarding my experience, I first started programming in VB (not even VB.NET, that's how far back my experience goes!), and over the years have deployed applications in C, Java, .NET and Clojure in production. I have familiarized myself quite a bit with functional programming languages like Haskell and Ocaml. I have also worked with SQL and no-SQL databases (25 years is a long time!). I am fully aware of the pros and cons of statically-typed systems, so I don't feel the need to learn yet another statically (or for that matter dynamically) typed language.

And lastly, based on the wonderful suggestions, I feel like I could narrow down my next learning journey into one (or more) of the following. I am stating these just in case they could be of use to someone in the same boat:

- Networks was suggested (thank you!) which really piqued my interest but I am thinking it might be better to get more specific and be intimately familiar with HTTP spec and best practices in API development. Methods to enable an API for any backend functionality seems to be a good skill to possess.

- Documentation - how to easily enable documentation for functionality, and basic tenets of good software documentation. Learn to introduce practices in the team that foster a culture of documentation.

- ML. I have learnt the very preliminary basics of this (using the seminal course by Andrew Ng!) but what I feel might be useful for me is to be a bridge between ML scientists and data engineering (I am a data engineer currently). Basically something related to ML Ops.

Again, thanks for these amazing suggestions. HN never fails me. I am not very active on HN, but hope to help out in future.

P.S: I will also respond to specific comments/questions to clarify. Seems wrong to leave some comments in the current state! :)

Re: Ask HN: As a senior engineer content with programming chops, what to learn next?

#26
post #7

I've been working on documentation a lot. Nobody seems to want to do it, yet everyone seems to want more. Everyone can write docs fine, just the way everyone can write code fine. But good docs are a lot of work. The ones that people understand at a glance, instead of having to crawl around. This is something that Google and Oracle can't do, so I don't expect it to be easy. Also just writing better code. Declarative p…

Thanks for this wonderful suggestion! I would love to know your thoughts about techniques for enabling a "documentation-centric" culture as well as how to write good documentation. I have realized over the years that it is definitely something that makes or breaks functioning teams. When people want to transition from one team to the other to break some monotony in their work, its great to have documentation that helps a new person onboard. Solves a lot of issues!

Re: Ask HN: As a senior engineer content with programming chops, what to learn next?

#27

I can't offer any advice, Captain, besides perhaps suggesting you play a bit with machine learning and see if it catches your interest. What caught my eye was that you use logic programming. Would you mind sharing what your use case is and how it fits your Python workflow?

Sure! Sorry I need clarify - my logic programming experience has nothing to do with Python. It was one of those times when I was looking to learn something different and so chanced upon Prolog. I did tutorials in SWI-Prolog and was fascinated by it - I did not have any idea that a language like this existed! The fact I know now that something like this exists and is very effective at a class of problems is sufficient for me! I also dabbled with Google's Logica over a weekend to get familiar with it.

Sorry if this wasnt what you were looking for :)

Re: Ask HN: As a senior engineer content with programming chops, what to learn next?

#28
post #16

Hehe, I'm doing a lot of SQL and python and feel the same about "solve pretty much anything". Is that the golden duo?

Do we work for the same company? :) Jokes aside, I do feel they can be used for most of business problems. Compilers, etc are a different thing, maybe. But its not my area of interest.

Re: Ask HN: As a senior engineer content with programming chops, what to learn next?

#29

Learn how networks work: http://intronetworks.cs.luc.edu/ Most SWEs I've met don't understand networks well despite writing software that interacts with them. Learn basic statistics. Apply it to performance testing, system modeling. Build off your knowledge of logic programming -- learn a formal verification language like SMTLIBv2 or TLA+. Apply it to find bugs in code, or to clearly write out algorithm or system des…

Thank you for the suggestion about networks. I will have to bend that a little to see if I can make it immediately useful by learning something like the HTTP spec. I have done a lot of backend web development but I do not know HTTP deeply. Also, I wish I had done a CS degree - then I would have HAD to study networks! I am largely self-taught.

Re: Ask HN: As a senior engineer content with programming chops, what to learn next?

#30

It doesn’t feel like a vague request so much as one whose answer is very personal. You could maybe characterize what you’re saying as that you’re feeling directionless in your career. You like it, but it feels mature and like you’ve reached a summit. You’re craving a new peak to try climbing but can’t find one that’s appealing. Maybe somebody will throw out an idea here that will inspire you directly, but my sense is…

Thanks for the valuable insight! Glad that you could find a rewarding project! Hoping to find something like that myself, at least temporarily, before I look for the next thing :)
Post reply on HN