August 14, 2010 Career, Success 6 comments
August 14, 2010 Career, Success 6 comments
As I promised, here is post on Knowledge Evaluation for the Senior level.
Definition of a Senior Level Developer
In most of the sources, Senior level is defined as level on which person is responsible for building complex components with minimal guidance and being unsupervised. Also person is an expert in language and has experience in business areas. I personally like definitions, where they additionally indicate person’s interest in software and bringing business value to the client.
So, who is Senior Developer?
For me being Senior Developer isn’t just label, that is indicated somewhere in the company by HR. It isn’t only list of responsibilities/duties I will be stick to. It is significant breakthrough in my career, that blesses me to move on. Moreover it is another step to self-actualize myself by accomplishing my life goals. Again, it is part of my RoadMap (I feel, that I need some post on it, but cannot till map is rolled in one or few places.)
Knowledge Evaluation
Except of taking into account my performance, company should always evaluate my knowledge to proceed with promotion.
My theoretical knowledge of programing and language isn’t under question
For me it was good time and my personal outcome for myself is that complete understanding of engineering management and requirements will come only with facing more real world situations, since simple theoretical knowledge isn’t enough.
Feedback
They did not give me official feedback yet, but I feel confident about positive one.
How will I proceed with new position?
First of all I will do all possible to not disappoint my management. Also I will work hard on keeping my brand up to people expectations and higher. Of course I will continue doing more than it is expected from me.
Any congratulations and comments are welcome!
For the Thursday I had nothing planned for learning, since I spent my night watching Perseids out of the city.
Knowledge Evaluations is very close, so I just reviewed all of the items I should know for it.
To lot leave this post empty, I decided to write at least about something. I feel, that I still have some weak areas like Networking. But it turns our that for .NET Desktop Profile, I need only basic knowledge of it, like understanding networking itself, application layer protocols, IP, TCP, UDP, SMTP, and so on and so forth. So for my luck I have basic ideas how all of that works and glues the world together.
Networking
We often use these abbreviations, but do we always know what they mean?
local area network (LAN)
wide area network (WAN)
metropolitan area network (MAN)
personal area network (PAN)
virtual private network (VPN)
campus area network (CAN)
storage area network (SAN)
Simple Mail Transfer Protocol (SMTP)
Multipurpose Internet Mail Extensions (MIME)
User Datagram Protocol (UDP)
… what more??
In the evening there will be post about how KE went and what are outcomes.
P.S. I feel myself very nervously at the moment…
August 12, 2010 Career, CI, Opinion No comments
For today it was planned to learn SQL and Continues Integration. In this blog post I’m going to express few thoughts on Continuous Integration. Only thoughts, because you can read comprehensive articles on it over the internet, like this one written by Martin Fowler.
My definition of CI:
![]() |
| I took picture somewhere from web, since I like how it illustrates CI |
Few main suggestions on introducing CI:
And some thoughts about blind architectors
When, I came to the project and I faced lot of difficulties that project had, like having sources under different repositories, having not automated procedure of builds, also when someone failed build, everyone knew about that next day and all QA work was stopped; lot of complains about merging sources; dry applying sources to diff versions procedures. None knew what is going with project till next day! I was junior at that moment I did not know about CI, but, hey where our architects have been? Thanks to efforts of new fresh architects we’ve got CI and it applies to our project very smoothly. What is left is to convince devs do committs more often and cover everything with Unit Tests. (But that has also something to do with our project specifics.)
Why didn’t they consider introducing CI earlier? This is mysterious question, I do not understand. There should be definitely something significant (like CI) that we can improve!
August 10, 2010 Career, UML 5 comments
Today is my third day preparing to the Knowledge Evaluation. For today I had DB Design and Modeling. Modeling is about UML diagrams as it is mentioned in sheet I’m using for preparing. In this post I explained each of the diagrams with one simple sentence. Also I drew few of them, have no enough power at this point of time at night to continue and draw all of them. Hope you will like my drawing tries :)
UML: Structure Diagrams
Class Diagram – show classes and their interaction in details.
Component Diagram – represent components of the system, their relationships and contracts they use to interact.
Composite Structures Diagram – show collaboration of instances in run-time and communication links used.
Package Diagram – organizes other model elements into groups for easy understanding of the system.
Deployment Diagram – represent static state of the working system, including hardware and software located on it.
Object Diagram – shows snapshot of the instances of the system to represent how system can look at run-time.
UML: Behavior Diagrams
Activitiy Diagram – represent workflow of the activities in the system, basing on decisions made.
Use Case Diagram – show usage patterns of the system, so they can ideally describe requirements.
State Diagram – shows all of the possible states of the object in the system and conditions when it can change its state.
UML: Interaction Diagrams
Sequence Diagram – show the lifetime of the components/classes and their interaction in time.
Communication Diagram – shows flow of the messages in the system and illustrates basic relationships between classes.
August 9, 2010 Career No comments
Today is the second day when I spend some evident time on preparing to my knowledge evaluation. For today I had Engineering Management, Requirements and OOD.
Engineering Management is something that I read few articles on wikipedia and OOD is something that is not possible to learn per one night. So regarding Requirements I noted only few things.
Requirements
Requirements is very important part of the process of building software. The better and cleaner requirements you get – the better understanding of the system and its design you create; the better you communicate requirements to development team – the better product will be built. And what is the most important as per me – you can evaluate requirements before you started developing something and find out if it is feasible.
So how can requirements look like?
Evaluating the Requirements for the Application
August 9, 2010 Career No comments
I’m preparing to the Knowledge Evaluation, which should let me get next step in my career. Today I spent about 5 hours on learning the Communication area of requirements for me. I read dozen different articles and reviewed many presentations. Very important part of communication is Team communication and Coaching, but I’m off for sleep. Indeed want to write something about it. You just need kick me to do that next week. Here in this post you will see some random lists on different communication items created or mixed from other resources by me.
All of us know how that is critical to be competent in written communications, specially with client, so while preparing I created some lists of things to be remembered.
Be clear in your e-mails:
Requirements
Software Requirements documents consist with:
Questionnaire
Meeting Minutes
Meeting minutes document what occurred at the meeting. They are not an opportunity to present a position or to add new materials and comments.
Format of Meetings Minutes should follow the agenda closely:
Always attach copies of materials distributed at the meeting or note where to find
them.
Proposals
Should have Executive Summary and answer for the following questions:
Conference calls
I’m sure that you can anourmous amount of information on how you can effectively provide your conference calls.
Here is my own list:
If this is bad post, let me know.
August 1, 2010 Career, Certification, Success No comments
I already wrote some posts on certification, where I mentioned why do I need certification and which value does it bring to me. After those posts I almost have nothing to add.
But maybe few things…
How 70-505 differs from 70-536? Questions in 505 are not so wide and after passing 536 + reading training kit it is much easier to pass this one.
How did I prepare? As I mentioned in one of my blog posts, I read training kit on 505 exam. Reading was boring. Taking into account that I already have strength experience working with WinForms it was ridiculous to read about some things like adding controls or something like that. But anyway I found some stuff interested for me. Also I did some research over internet on how other passed this exam. Not enough information exist about this one. Maybe because it is not very popular.
Also I worked on training tests, including demo test on MeasureUp.
Passing Exam
As you see preparation looks very similar to what I had for my 536 exam but I was still worrying about passing exam, since I already failed it. That time I even did not read training kit and was sure in passing exam.
As I was afraid to fail it once again, while testing I was really concentrated on questions and. I PASSED EXAM with score 1000, this means that I answered correctly on all 40 questions. It was really surprising and is pleasure for me.
You can see my transcript using this information:
https://mcp.microsoft.com/authenticate/validatemcp.aspx
Transcript ID: 904316
Access Code: andriybuday
Effect on Career
In post It is time to get Microsoft Certification, I wrote that certification is important for my career growth. Actually in few words my company has schema that defines conditions to be eligible for promoting to the next level.
Here is my current status:
As you can see, I satisfy all conditions for being Senior.
I have just perfect Performance and it was noticed by my managers, also I worked in my company near 2.5 years (looks like this condition is bonus for me, since now it should be 3+ years), also my English is now evaluated as Upper-Intermediate, I did dozen of presentations, and finally I got that certification.
So what is left? – Knowledge Evaluation.
Knowledge Evaluation is meeting when guru guys bombard me with questions to ensure that I’m competent in areas, which are already defined somewhere in requirements. So my next step is to find out my weak areas and get better with them, so I will have more balanced knowledge. I now feel that in some areas I’m competent but some are still very weak, because I do not have experience working with them. You can expect that soon you will see posts on themes I do not know well, but I try hard to figure out them for myself and for you. Hope they will be interested for you!
Please let me know your thoughts on this post.
July 25, 2010 Career, Success No comments
First of all, and as per me, interviewers ask mainly those things that they know well
So if you are candidate for junior position, range of questions that interviewer has could be dramatically wide for you. But once again, if you are junior, he will ask you basics in which he is guru. This means that slight inaccuracy in your definition will just highlight that you are new incomer. This shouldn’t make you sad.
If you are candidate for mediate position, you already are competent in some areas. This means that two things might happen, either your interviewer is competent in them also or either not. In first variant you will need to prove that you are really competent, and after you are done with that, probably general questions will go smoothly. In second variant it doesn’t matter how good you are in those things, everything will depend on other questions. But anyway try to highlight your strength areas.
Regarding senior positions I have almost nothing to say, because I’m still intermediate developer. I think that in this case company finds some resources that are super-competent and everything looks like in med variant, just on another level, or maybe they take candidate basing on his general applicability to this position.
For Junior
Try to show that are able to learn everything, that you are passionate about learning new technologies and can think out of the box. (One friend gave me this hint.) Generally they take juniors for their growth capabilities. That is like investment.
For intermediate
Be confident in things you know and ready for the questions you don’t know answers. Show readiness to solve problems and be honest when answering.
Interview and candidate attitude to work
Remember that you are also interviewing
Did I have one recently?
I’m not throwing you to send resumes and go to dozen interviews, but I recommend having one interview at least once a year, just to know if you need to pay more attention on learning something or improving something.
I am not afraid to say above, even if my current employer will read this blog post or if company who asked me for interview will read this. Why? Because if I stay, this means that current company satisfies me with conditions it gives me and this should make it happy that resources are not going away. If I move, this means that another company finds me more valuable than current, and this means only one – I was losing something at my work.
Guys, that all is about how much you cost. And I know answer for this question: