Ruby: Somehow I overlooked this Gem of a Language
Labels: Development, Dynamic Languages, Engineering, Guido van Rossum, Matz, Objects, OOP, Python, Ruby, Smalltalk, Static Typing
Labels: Development, Dynamic Languages, Engineering, Guido van Rossum, Matz, Objects, OOP, Python, Ruby, Smalltalk, Static Typing
Labels: AOP, contracting, Development, Dynamic Typing, Engineering, Functional Programming, OOP, PHP, Rapid Application Development, Salaried, Static Typing, Website Design
Labels: Cheetah, Django, Engineering, Engines, Gant Charts, Project Planning, Python, Rapid Application Development, Ruby, Scheduling, Team Projects, Website Design
It is amazing how quickly situations and environments change. One moment I’m in what I consider a bait-and-switch job, and the next I find I’m getting calls and offers from every direction. As is par for the course, only a small percentage of the positions availed and/or offered to me were of true interest to me at this point in my career. I’m appreciative for the opportunities availed by those companies, individuals and startups with whom I’ve spoken to and/or met personally in the past two months, and I wanted to state that for the record, but that brings me to the present.
My new position as Chief Software Architect for several companies belonging to a successful entrepreneur. This is not a new experience for me, but I have to say that the flexibility included with this new position provides me a certain level of freedom sorely missing from the anomaly that was my previous position. I wholeheartedly look forward to this new venture and know for sure that two days from now (as of this writing), when I am on my way to New York to meet up with one of the firms for which I will be helping to reshape technology-wise, that I made the right decision.
I will miss interacting with my soon to be former co-workers, though I won’t miss the rest of the environment there, which ironically was one of the original reasons for choosing the position in the first place. Conversely, just as I have things that I will miss with my soon to be former position, I have much to look forward to with my newer role and corporate overlord. Either way, I have much for which to prepare and at this point I’m already planning the establishment of the core tech upon which to base the new infrastructure. I’m thinking Postgesql, Python, Java and OpenSUSE on a Core 2 Duo platform, and in a later entry, I’ll be discussing which of the aforementioned technologies upon which I decided, but until then..
Labels: Consultant, Employment, Engineering, Independent, Opportunity
The position was simple, the company in question was a contractor to a large retail clothier whose name rhymes with ‘Hurlington Boat Factory’ and is located in a town in New Jersey possessing a similar sounding name. The CEO of the contracting firm requested specifically someone with considerable experience in Python who could build a real-time return transactions processing system which would utilise both XML and Oracle 10g. While I have a strong dislike (along with many other software engineers) for XML, the reality of getting paid decent money for coding 100% in Python was all that I needed to hear.
I have to say that I was excited not only because of the prospect of a Python pure coding environment but that I would be working initially and then periodically out of a satellite office in Cherry Hill. This was exciting because for the first time in my decade plus career, I was finally in a scenario where I was writing code for a company whose primary purpose was producing JAVA software applications for sale. The office in Cherry Hill consisted primarily of the CEO, a lead developer and a secondary developer. There were several other individuals who would at times utilise the office including the owners, project managers and other associates of various roles, but ultimately it was an office with other competent coders one of those being quite the master of Cold Fusion technologies.
After my first few weeks on site in the Cherry Hill office it was time to start working on-site at Hurlington’s headquarters along with the only other consultant coding in Python. This was the beginning of a very enjoyable period in the contract due to the excitement of the project and the joy and experience of worthing with another Pythonista.
The details of the project are much like any other project you might encounter when modelling a new project off of a customer version produced for a specific client. It got ugly for a while due to the multiple aspects of the project including client systems which needed to be integrated for proper functioning along with an existing array of registers distributed nationwide and a database number records approach a half a billion entries. The normal in fighting and finger pointing existed but it was all worked out in the end with a finished product delivered and a contract satisfied 100 percent.
The only issues encountered which left a bad taste in my mouth were those pertaining to a clueless project manager who regardless of his claim of years of experience was apparently lacking considerably outside of his realm of Oracle, which caused unnecessary attitude due to his ignorance of coding and APIs. There were other issues dealing primarily with suits, but I doubt that this specific issues varies much anywhere. Suits and Engineers rarely if ever mix, let alone get along except on a faux-cordial level. The ultimate end of the contract was due to the project portion I was responsible for coming to fruition, even though I was already working on leaving regardless. It wouldn’t have mattered much anyway given that the main contracting company is located up north in the centre of New England and are in the process of relocating everyone to that locale, an act which I am unwilling to do.
I do like certain aspects of software consulting, but given that there is a considerable amount of extra taxes which must be held aside, some unholy hours which must be adhered to for the purposes of meeting quite strict time lines, and the reality of being a second class citizen in the work environment (or 3rd class in my case as a sub-contractor). It all comes to an end in two days and I go back to a normal, preferred work environment in five days when I start up in a salaried position again working for a web host writing a multitude of applications and revisions of existing software, in a nice relaxed geek environment, also in New Jersey, but this time around, I’m excited to not be a consultant. At least for the time being.
Labels: Best Practices, Consultant, Engineering, Environment, Great Minds, Java, Oracle, Python, QA, Quality, XML