Days of being Freelancer

This is the first time I am using a weblog to share my working life, especially in the Information Technology field that keeps on moving on, the dramatic changes and competitions ahead.

As seen from the above title, I am currently working as freelancer as there had been change in my job scope and I had this a try but it doesn’t work out well a couple of months back.  Right now I am working as a free agent for a Consulting firm as a Business Development and Operations consultant (cool name!!!), working on developing new initiatives/business plans and oversees project assignments with his Technical team. My working schedules are flexible, planning my time when to meet clients and personal time for my upgradings. Yes, my income for now are based on commissions and project-basis.

It is not easy as being a free agent as one has to change the mindset of having fixed income but this builds up my confidence on the skill-sets I have and to build them up. Today, I am at the library to do some research on the concepts and designs of distributed systems. For those in IT who is reading this blog, we know that the Internet, Intranet, mobile/wireless networking are the characteristics of distributed systems. I am keeping in mind of these 7 factors/challenges to take into consideration in defining the scopes and issues that may arise from the design for this framework:

  1. Heterogeneity – allows users to access and run applications over a large variety of computer and networks that includes networks, computer hardware, operating systems, programming languages and implementation by different developers.
  2. Openness – determines whether the system can be extended and re-used/re-implemented in various ways. This objective cannot be achieved unless the specification and documentation of the key software interfaces of the components of a system are made available to software developers.
  3. Security – 3 components to consider for security for information; confidentiality, integrity and availability. So far, 2 security challenges have not yet achieved on are Denial of service attack and security of mobile code.
  4. Scalability – A system is considered scalable if there is significant increases in nos of resources and nos of users. 2 areas of challenges to look at designing a scalable distributed systems – controlling the cost of physical resources, controlling the performance loss (time taken to access hierarchically structured data), preventing software resources running out, avoiding performance bottlenecks
  5. Failure handling – failures in distributed systems are partial as some components fail while othes continue to function, hence can be difficult. Techniques to think to deal with them are how to detect failures, how to mask failures (making them less severe), tolerate failures (from users perspective), recover from failures (involves the design of software that the state of permanent data can be recovered/roll-back after a server crashes and redundancy
  6. Concurrency – Both services and applications provide resources that can be shared by clients in a distributed systems. Any object that represent a shared resource in a distributed system must be responsible to ensure it operates correctly in a application. For an object to be safe in a concurrent environment, its operations must be synchronized in such a way that its data remains consistent.
  7. Transparency – a major influence on the design of the system software;
    • *Access transparency – enables local and remote resources to be accessed using identical operations
    • *Location transparency – enables resources to be accessed without knowledge of their locations
    • Concurrency transparency – enables several processes to operate concurrently using shared resources without interference between them
    • Replication transparency – enables multiple instances of resources to be used to increase reliability and performance without knowledge of the replicas by users or application programmers
    • Failure transparency – enables the concealment of faults, allowing users and application programs to complete their tasks despite the failure of hardware or software components.
    • Mobility transparency – allows movement of resources and clients within a system without affecting the operation of users or programs
    • Performance transparency – allows the system to reconfigure to improve performance as loads vary
    • Scaling transparency – allows the system and applications to expand in scale without change to the system structure or the application algorithms

The above gives me more ideas on what to take note of in designing distributed systems.

That all for my day in the library. Tomorrow I am preparing for an interview for Application Support Manager. Have a good rest for now.


0 Responses to “Days of being Freelancer”

  1. Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

October 2007
    Nov »


Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 464 other followers


%d bloggers like this: