14,510 reputation
22766
bio website linkd.in/mnuskin
location Rochester, NY
age 34
visits member for 3 years, 8 months
seen 2 days ago

In my previous life I have always been a back-end MS Windows C++/C# (90/10) developer working with various recording, streaming and analytics servers. Lots of COM/DCOM, multithreading with emphasis on performance (CPU, disk/network I/O, memory footprint...), scalability and reliability.

Since November 11, 2012 (same day I started drinking coffee), I have been with Carbon Black, an awesome startup in the InfoSec space that will make the world a safer place. My current role is an Enterprise Server Engineering Lead, which primarily involves Python/Java (75/25) development with lots of open-source packages all running on Linux (CentOS/RedHat).

I have a strong passion for building quality software. I'm also a huge proponent of Agile/Lean methodologies and always advocate for iterative approaches, continuous improvement and an ideal that the only constant in what we do should be change.

Back when I used to have a 40-hour job, I started a GitHub project, which still has some of my code. Unfortunately, these days that had to go to the back burner.


Nov
13
comment What is better for error trapping? Return values or Exception handling
In the order of runtime efficiency: assembly > C > python. So why aren't we all coding in assembly? My guess is because most of us don't care if our CPU spends 99% being idle or 97%. Start with getting work done, optimize (i.e. remove exception handling for performance reasons) only when gain will be measurable and beneficial.
Jul
9
comment Why would I learn C++11, having known C and C++?
@Shahbaz: I took a glimpse and I don't see anything wrong with C++ closures. C++ has always been a lower-level language than many others that have garbage collections. You seem to have associated the two concepts of closures and memory management into one and as I read your comment, you claim if you have one, you must have the other. What I see is a simply badly written code. C++ gives you tools (like smart pointers) to help you with memory management, but a) you are not using those tools and b) code as written, regardless of closure, mismanages memory.
Jul
2
awarded  Nice Question
Jul
2
awarded  Curious
Jul
2
awarded  Nice Answer
Jun
19
awarded  Nice Answer
May
20
comment Overcoming slow problem solving due to increased knowledge of what might go wrong
@Morg - it is unfortunate that every software professional doesn't use exactly the same definition of words and phrases, but such is life. I agree that the way you defined technical debt in your mind, it is more vicious than what I'm describing. But you'll have to agree that between myself, Jeff Atwood and the author of that msdn that Luke posted, and Luke himself, our definition of "techincal debt" is different than yours. $20 loan with 5% interest is still a debt, but if I choose to have extra $20 today, it is my choice to take on that cost, which ain't that severe
May
5
awarded  Enlightened
May
5
awarded  Nice Answer
Apr
4
reviewed Approve suggested edit on Specify that a spawned process returns to a parent
Apr
3
reviewed Approve suggested edit on Why do concurrent languages tend to have more complicated syntax?
Apr
3
reviewed Reject suggested edit on IOS app updates that don't require App Store submission
Mar
31
reviewed Approve suggested edit on Is it fine to make a default constructor unusable?
Mar
31
comment Overcoming slow problem solving due to increased knowledge of what might go wrong
@Peri - and how is that any different from someone who took out too much money at the bank and now drowning in interest? Have you read the above comment thread? If yes, do you disagree that every unfixed ticket is a chunk (could be very small or not so small) of technical debt? And if you don't disagree with that part, do you disagree that just about every development team will ship products with open known tickets just about every time? blog.codinghorror.com/paying-down-your-technical-debt -- "...accruing technical debt is unavoidable...". I think I'm good with my understanding
Mar
31
awarded  Announcer
Mar
31
reviewed Approve suggested edit on What should a repository really do?
Mar
29
awarded  Great Answer
Mar
29
reviewed Reject suggested edit on health tag wiki excerpt
Mar
29
reviewed Reject suggested edit on health tag wiki
Mar
25
reviewed Approve suggested edit on Inner workings of the IF() function - why aren't expressions evaluated?